Smartphone Software Development Tools
To get started with Smartphone software development, you need to have a set of tools installed on your development computer. These tools form a basic Smartphone application development environment. The development computer must be running Windows Server 2003, Windows XP, or Windows Vista.
Visual Studio 2005
Visual Studio 2005 (code-named Whidbey while in development) is Microsoft’s latest integrated development environment (IDE) for both desktop and device application development. The previous version of Visual Studio, Visual Studio .NET 2003, can also be used for application development targeting Windows Mobile 2003 devices. Both Visual Studio versions enable you to program, debug, test, and deploy an application targeting Windows Mobile devices. If you have don’t the release version of Visual Studio 2005, you can download a trial version from http://msdn.microsoft.com/vstudio/. Note that the free Visual Studio Express Edition does not support application development with the .NET Compact Framework for Windows Mobile devices. You need to use Standard Edition, Professional Edition, or Team System for Smartphone application development.
Developers who are familiar with earlier versions of Visual Studio will find the 2005 version quite easy to get along with. For example, you will still see windows such as the control toolbox window, Solution Explorer window, and output window. The Form Designer enables you to drag and drop controls onto a form. The Class Designer simplifies class design by providing a list of toolbars for classes, interfaces, abstract class, struct, delegates, inheritance, and so on. Object Browser in Visual Studio enables developers to quickly browse objects and their members.
In addition to general IDE improvements such as code snippets, revision marks, refactoring, and so on, there are some new features that a Smartphone developer should know about:
-
.NET Framework 2.0 and .NET Compact Framework 2.0. The new versions of both frameworks have been enhanced with new functionality and performance.
-
Native code development is supported. Developers do not need to resort to eMbedded Visual C++ for native code development anymore.
-
MSBuild. MSBuild is the new XML-based build system for managed application development. The build process is comprised of a number of atomic units of language-independent build tasks that developers can customize, augment, or even redefine. MSBuild is also a core component of the .NET Framework redistributable. Projects created in Visual Studio 2005 are now in MSBuild format (an XML file).
-
The new Device Emulator. This is described in an upcoming section.
-
.NET Remote tools, including the following:
-
Remote File Viewer - To browse and transfer files to a device or an emulator
-
Remote Heap Walker - To view memory usage on a device or an emulator
-
Remote Process Viewer - To view process information on a device or an emulator
-
Remote Registry Editor - To edit the registry of a device or an emulator
-
Remote Zoom In - To zoom in on a remote display on a local computer
-
Remote Spy - To view messages a window on a device receives
-
The MSDN library is also a must-have component that enables you to access online help while you program, test, and debug your application.
Windows Mobile 5.0 SDK for Smartphone
The Windows Mobile 5.0 SDK for Smartphone includes the Smartphone emulators (which are also in Visual Studio 2005), some command-lines tools, help files, header files, and libraries for native code development. The SDK also provides a set of sample configuration files and digital certificates for day-to-day application development with a physical device. You can download the SDK from www.microsoft.com/downloads/details.aspx?familyid=&displaylang=en.
Smartphone Device Emulator
Visual Studio 2005 comes with a new device emulator called Microsoft Device Emulator, which is a completely rewritten version of the Smart Device software emulator. Previously, the device emulator for Pocket PC and Smartphone was a Windows CE operating system image running in a virtual x86 emulation environment. However, in the mobile and embedded world, many devices use other processors, such as ARM, MIPS, and SH4. Among all these processors, including x86, ARM is far and away the market leader. In fact, ARM is not a single processor but a processor architecture designed by a British company called Acorn, which licenses the architecture to processor manufacturers such as Intel and Texas Instruments. The gap between an x86-based emulator and an ARM-based mobile device turns out to be a serious limitation of the Smartphone and Pocket PC programming support in Visual Studio .NET 2003. Even when an application is tested within an emulation environment of the x86 architecture, it may not function well on other processors. In addition, developers have to compile the application first for the x86 in order to debug it in the emulator, and then again for ARM or other processors to test it on a physical mobile device.
The new emulator in Visual Studio 2005, as shown in Figure 3-1, solves the problem. Now the emulator itself is a Windows Mobile operating system for a targeting processor (ARM), running within a Microsoft Virtual PC environment. (Virtual PC is a virtual machine technology that enables a guest operating system to run on top of another operating system.) Your application will be directly compiled against the ARM-based Windows Mobile operating system, thereby eliminating the gap between the x86 and target processor architecture. Here is a list of features that the new emulator offers:
-
Run code compiled for ARM processors, rather than x86 processors. The emulator executes true ARM instructions. Because the underlying Windows Mobile operating system is exactly the same OS running on a physical device, developers can run the same binaries on the emulator and the physical device.
-
Support synchronizing with ActiveSync. ActiveSync is a tool that can synchronize a device with a computer. Now, with the new emulator, you can establish a partnership between your computer and the emulator. A Device Emulator Manager tool is provided to work like a “cradle” for a physical device so that synchronization can be performed.
-
Configurable screen resolution and flexible display orientation. You can easily rotate the emulator screen, zoom the display, and change the skin of the emulator.
-
Storage card emulation and serial port emulation. You can share a folder on your development computer that will appear as a storage card to the emulator.
-
With appropriate images, the emulator supports Windows CE device emulation, Smartphone device emulation, and Pocket PC device emulation. Figure 3-2 shows the Device Emulator Manager, which lists all available emulator images.
ActiveSync
You need to have Microsoft ActiveSync to connect your Smartphone device to your Windows PC. ActiveSync acts as the gateway between your PC and your Windows Mobile device so that you can easily transfer files or synchronize application data such as e-mail, a calendar, and so on. For Smartphone development, ActiveSync is needed by Visual Studio to transfer data between the development PC and the device or the emulator. You can download ActiveSync from www.microsoft.com/windowsmobile/activesync/default.mspx.
All-In-One Package
All the required tools for Smartphone application development can be purchased as an all-in-one package in a DVD, the Windows Mobile 5.0 Developer Resource Kit. You pay only the shipping and handling fee. It includes a 90-day trial version of Visual Studio 2005 Professional Edition, Windows Mobile 5.0 SDKs for Pocket PC and Smartphone, ActiveSync 4.1, .NET Compact Framework 2.0, localized emulator images and other useful developer tools, SQL Server 2005 Mobile Edition, plus developer resources such as links to technical whitepapers and webcasts, WeFly247-50 sample applications, hands-on labs and videos, and partnering opportunities. You can also download a subset of the package from http://msdn.microsoft.com/mobility/windowsmobile/howto/resourcekit/. The downloadable package does not include the trial version of Visual Studio 2005 or some emulator images.
Popularity: 100% [?]




September 24th, 2008 at 7:22 am
Hello there, i need ur advice in something i’m making a VOIP graducation project, im confused to deal with the symbian programming or the windows mobile,…if im going to use the windows mobile is it available to program through c++ or c# and visual studios to make a program that deals with VOIP(voice over ip)? what about the emulator,im kind of a begginer so tell me with details plz…the emulator? is it the normal visual studios using the C++ or C# also anytips before starting will be thankful thanks.