left banner

Imagine Cup 2009 > SDI Windows Mobile Challenge

Welcome to the
United States SDI Windows Mobile Challenge

The Software Design Invitational's Windows Mobile Competition challenges students to explore their own creativity by using Windows Mobile technology to solve what they consider to be challenging problems facing our global society today.

Enter the US SDI by Using Windows Mobile Technologies as one of your optional elements!

Students- use your genius to create innovative, dynamic, and powerful software applications by using Microsoft tools and technology- namely the Windows Mobile SDK. Unleash your ideas, curiosities, and talents towards creating usable software applications that run on Windows Mobile Phones. Demonstrate innovation on the Windows Mobile platform and you can win a chance to interview for an internship at Microsoft as well as winning the Windows Mobile Phone of your choice. Integrate Windows Mobile into your designs and we will send each team a phone to test their genius on.

WHAT DO I NEED TO DO TO ENTER THE WINDOWS MOBILE CHALLENGE?

  • Follow the guidelines on the Software Design Invitational

  • Start thinking about how you are going to include Windows Mobile in your project

  • Get Connected with Windows Mobile experts online and check out some of our technical resources you may find useful

  • Outline your intention and concept to use your Windows Mobile in for your entry in the qualifying round

  • All other required elements and timelines from the US SDI apply PLUS required use of Windows Mobile SDK in your solution development with the end product running on a Windows Mobile Phone

PRIZES AND JUDGING FOR UNITED STATES WINDOWS MOBILE CHALLENGE

  • 1 Windows Mobile Phone to each team developing a Windows Mobile Application using the Windows Mobile SDK entering into the national semi finals

  • Prize for the team with the most innovative application include:

    • A chance to interview for an internship at Microsoft
    • Each team member will get the Windows Mobile Phone of their choice (under $1,000)

  • We are looking for apps that:

    • Has the potential for a large impact in solving problems
    • Ease of use, great UI, and functionality
    • Great integration of Windows Mobile functionality
    • Extra credit goes to projects that also utilize other optional elements to complement Windows Mobile

TECHNICAL RESOURCES

Technical Articles

User Interface

Developing Resolution aware and Orientation Aware Windows Mobile-Based Applications in Native Code (http://msdn.microsoft.com/en-us/library/aa454895.aspx)
Convert an existing Windows Mobile-based application to be aware of multiple screen orientations, sizes, and resolutions in this self-paced hands-on lab. You will alter the application so that it is aware of a change in screen orientation and adjusts for the presence of portrait, landscape, and square screens. You will then convert the same application so that it effectively adjusts for devices with higher screen resolution. Upon completion of this lab, you will know how to ensure that your existing Windows Mobile-based applications behave properly across the increasing number of devices with multiple screen orientations, sizes, and resolutions.

Using Visual Studio 2005 to Design User Interfaces and Data for Device Applications (http://msdn.microsoft.com/en-us/library/aa454904.aspx)
Learn about what's new in Visual Studio 2005 for user interface and database design to use for .NET Compact Framework version 2.0 applications. This article introduces you to the new development environment-specifically to the new Windows Forms Designer that is part of Visual Studio 2005. You will also get a short guided tour of the new controls that are available out of the box in Visual Studio 2005, and you will learn how easy it is to create applications that support both portrait and landscape modes using these controls. Visual Studio 2005 helps you target multiple devices. You will also learn how you can use form inheritance to reuse and extend existing forms. Because most mobile line-of-business applications also need to store and access data, you will also learn how to use the new data designer in Visual Studio 2005 to create and populate a SQL Server 2005 Mobile Edition database. Also in this article, you will find out how to create a local database and how to use it in a simple application.

Working with Data

A Technical Comparison of Replication and Remote Data Access Features in SQL Server 2005 Mobile Edition 3.0 (http://msdn.microsoft.com/en-us/library/ms345126(SQL.90).aspx)
Compare feature sets for the two Microsoft SQL Server 2005 Mobile Edition 3.0 (SQL Server Mobile) connectivity solutions, merge replication and remote data access (RDA), and understand which connectivity solution might be more beneficial for your project.

Developing a SQL Mobile Application with Visual Studio 2005 and SQL Server 2005 (http://msdn.microsoft.com/en-us/library/aa454892.aspx)
Learn how to use Microsoft SQL Server 2005 Mobile Edition (SQL Mobile) to synchronize data between a Windows Mobile-based device and a SQL Server 2005 backend database.

Migrating Platforms

Building Portable Windows Mobile-based Applications (http://msdn.microsoft.com/en-us/library/ms838140.aspx)
This article summarizes key concepts and practices for building binary portability into Windows Mobile-based applications.

Miscellaneous

How To: Add Windows Mobile 6 and Windows Mobile 6.1 Browser Definitions to ASP.NET (http://msdn.microsoft.com/en-us/library/cc546461.aspx)
In this article, Jim Wilson explains why ASP.NET sites that work with Microsoft® Internet Explorer® Mobile on Microsoft Windows Mobile® 5.0 may not render correctly when accessed from Internet Explorer Mobile on Windows Mobile 6 and Windows Mobile 6.1; he then demonstrates how to overcome this issue through the addition of a custom browser definition file.

Dynamic Graphic Text Resizing (http://msdn.microsoft.com/en-us/library/bb986765.aspx)
The Microsoft® Windows Mobile® operating system runs on a variety of devices, many of which have different screen resolutions. The varying screen sizes and resolutions can be a challenge to developers who are attempting to reach the largest possible audience. One of the many challenges developers face is displaying graphics with GDI+ that adapt to different screen sizes. A simple class that allows graphical strings to be displayed in a size that fits the screen can help developers write applications in this dynamic environment.

Developing Stylus-Free Windows Mobile Professional Applications (http://msdn.microsoft.com/en-us/library/bb985500.aspx)
Designing your application to be easily used without a stylus can often reduce the complexity of interacting with your application and make the user more efficient overall. Similarly, as touch-screen and non-touch-screen devices continue to converge, designing your application so that users can interact with the application without a stylus dramatically increases the number of devices that can support your application. This article demonstrates how you can develop applications to reap these benefits of stylus-free design.

How to Intercept Incoming Short Message System (SMS) Messages (http://msdn.microsoft.com/en-us/library/bb932385.aspx)
Short Message System (SMS) messaging provides a convenient way to communicate between applications running on separate devices; the MessageInterceptor class allows you to easily incorporate SMS message handling in your application. This paper provides a description of the MessageInterceptor class' capabilities and includes samples of the class' most common uses. Samples are shown in both C# and Microsoft® Visual Basic® .NET.?

Establishing Network Connectivity with the Windows Mobile Connection Manager (http://msdn.microsoft.com/en-us/library/bb840031.aspx)
This article focuses specifically on demonstrating how you can use the Microsoft® Connection Manager to establish a network connection and release a connection from a managed application. The focus of this article is the concepts behind establishing connections and disconnecting connections with the Connection Manager, not a specific managed wrapper over the Connection Manager API. The goal of this article is to cover the concepts in such a way that they can be applied to any Connection Manager managed API.

Remote Device Configuration with the .NET Compact Framework (http://msdn.microsoft.com/en-us/library/bb738068.aspx)
Learn how to deploy configuration settings in a unified way on devices running Microsoft® Windows Mobile® 6 Professional or Windows Mobile 6 Standard. After a general discussion about the native configuration infrastructure that is available on devices running Windows Mobile Professional or Windows Mobile Standard, a sample application and code examples, written in C#, demonstrate practical uses of this infrastructure including an XML Web service and client applications for devices running Windows Mobile Professional or Windows Mobile Standard.

Securing Communications with SSL and the .NET Compact Framework (http://msdn.microsoft.com/en-us/library/bb738067.aspx)
Learn how to use secure communication in applications that are developed for devices running Microsoft® Windows Mobile® 6 Professional or Windows Mobile 6 Standard. After a general discussion about security and the enabling technologies, a sample application and code examples, written in C#, demonstrate practical uses for these technologies including a server XML Web service and client applications for devices running Windows Mobile Professional and Windows Mobile Standard.

Application and Network Authentication with the .NET Compact Framework (http://msdn.microsoft.com/en-us/library/bb736226.aspx)
Learn how to authenticate access to devices running Microsoft® Windows Mobile® Professional and Windows Mobile Standard, the applications that run on these devices, and network resources that these applications request access to. After a general discussion about security, authentication, and the available options, a sample application and code examples, written in C#, demonstrate practical uses for performing application and network authentication for servers, devices running Windows Mobile Professional, and devices running Windows Mobile Standard.

What's New for Developers in Windows Mobile 6 (http://msdn.microsoft.com/en-us/library/bb278115.aspx)
The Windows Mobile® 6 developer platform release focuses on a few core goals: simplify line of business (LOB) application development and deployment, make the task of building a single application that runs successfully across the many different devices in the Windows Mobile family easier, and provide an enhanced user experience. This paper explains the new Windows Mobile 6 features and their purpose from a developer's perspective. This paper also explains the many new tools provided by the Windows Mobile 6 Software Development Kit (SDK), and provides some guidance on getting started developing Windows Mobile 6 applications.

Architectures of the Today Screen Plug-in and the Home Screen Plug-in (http://msdn.microsoft.com/en-us/library/bb278109.aspx)
Compare the architectures of the Today screen plug-in (for Pocket PCs) and the Home screen plug-in (for Smartphones). This article also gives advice and samples to efficiently design these plug-ins. This article assumes that you have a basic understanding about the Microsoft® Windows® CE operating system, programming concepts, C++ language, and COM.

Hands-on Labs

Step by Step: Writing Device-Independent Windows Mobile Applications with the .NET Compact Framework (http://msdn.microsoft.com/en-us/library/bb278110.aspx)
Learn how to build Microsoft® Windows Mobile®-based applications that successfully support the wide variety of device capabilities and available displays.

Step by Step: Understanding Windows Mobile Security Using the Device Security Manager (http://msdn.microsoft.com/en-us/library/bb278107.aspx)
Become familiar with the concepts of authentication, permissions, and authorization. This HOL will also teach you to use several tools to understand how an application runs on different security configurations.