1. Windows Phone Overview
Microsoft Windows
Phone is a great consumer phone because it has all of the features to
which users have become accustomed with the Apple iPhone and
Android-powered smartphones, like the Motorola Droid and HTC Incredible.
These features include multitouch, a beautiful user interface (UI) that
implements a new modern design Microsoft has named Metro, social
networking services like Facebook, and support for popular e-mail
accounts such as Yahoo, Hotmail, Google, and AOL, or, if you are a
corporate user, Microsoft Exchange. Uniquely, the phone ships with a
version of Microsoft Office that you can use to read, edit, save, and
synch any Word files, Excel spreadsheets, and other Office formats,
making it a great phone for those who use Office at home or in the
office. Windows Phone can also integrate with Xbox LIVE, making it a
great choice for gamers.
Microsoft Windows Phone uses
the Zune software to sync installed applications, pictures, music, and
back up and flash operating system updates. As a developer, you'll also
use Zune in conjunction with Visual Studio to debug your applications on
a real device.
Microsoft also introduces the concept of a hub
with the Windows Phone: a People hub where users can store all of their
contacts and social networking connections, a Music hub where consumers
can listen to, download, and purchase music, and an App hub, also known
as the Marketplace, which you will be most interested in, since you
will be publishing the application you create.
Having a phone that's a hit
with consumers is important because the consumer marketplace is where
the greatest opportunities for applications that you write are to be
found. One of the great things about Windows Phone is that Microsoft
imposes the hardware specifications on the phone manufacturer, making it
easy for you to develop an application without worrying about writing
special codes for the specific devices. For any future release of the
phone, you are guaranteed that the application you write today will work
regardless of the brand of the phone.
Naturally, you want to know
what language you'll need to master for your work. For Windows Phone,
the language of choice today is C#; Visual Basic (VB) programmers will
have to wait. Although Microsoft has said it will support that popular
language on the phone. As for an application development framework, you
have two choices: Silverlight or XNA. Silverlight and XNA both use core
.NET Framework.
2. Windows Phone Hardware Specifications
Knowing what's included in
the Microsoft Windows Phone hardware specifications will help you
prepare for the special needs of projects you'd like to attempt. Table 1
lists the minimum hardware requirements any Windows Phone manufacturer
must meet, and also includes suggestions as to how they can impact
developers like you.
Table 1. Windows Phone Minimum Hardware Requirements
Hardware Feature | Description |
---|
Must display at WVGA (800 × 480) | Having to worry about only one single screen resolution makes it easy to develop an application. |
4-point-multi-touch capable | This
is unique to the Windows Phone, and you can use this feature to create
four-player games. There is definitely room for innovation for using
this particular feature. |
DirectX 9 hardware acceleration | This
means the phone will have a graphical processing unit allowing
graphically intense tasks in the application to be offloaded to the
graphics chips of the phone. This will help you create very smooth and
responsive applications and games. This also means 3D games are possible
as well. |
GPS | You will be able to create location-aware applications.
|
Accelerometer | This
feature will measure the change of the acceleration in the phone. The
accelerometer can be used in games or in creating utility applications,
like a level.
|
Compass | Detect north, south, east, and west. |
Light | Can be used for flashlight for the camera. |
Digital Camera | For taking a picture and sharing it on Facebook and other social networking sites.
|
Hardware controls: back, start, and search buttons | Every
phone will have three buttons on the front of the phone. Keep in mind
that you will be required to use back buttons for going backward in your
application, otherwise having separate back buttons in the application
can confuse the user.
|
Support data connections: cellular network and Wi-Fi | This
feature allows you to connect to the Internet. You can create web
services and consume them from your applications, or you can consume
third-party APIs like Twitter or Facebook in your application. |
256 MB of RAM and 8GM flash storage | Keep
in mind that your application can use only 90MB of memory unless the
device has more memory than 256. If your application does not respect
this, the application will fail the certification process at the
Marketplace. Also 8GB of flash memory used for storage is shared among other
applications, so if you are saving any kind of static data into the
Isolated Storage, you must check for the space available and handle the
exception appropriately.
|
AT&T had announced it would carry
Samsung's Focus, LG's Quantum, and HTC's SurroundTM. And T-Mobile had
announced it would carry HTC's HD7. For those who have other cell phone
providers, Dell said it planned to ship its Venue Pro. You can find more
information on the release of these phones at www.microsoft.com/windowsphone/en-us/buy/7/phones.aspx.
In the next section, you
will learn how the software behind these great consumer phones also
provides a great development platform for developers.
3. Application Development Life Cycle
Understanding the
application life cycle will help you understand what you will need to
prepare much more in-depth discussion including certification process. Figure 1 illustrates a high-level view of the life cycle of an application.
As a developer, you will
start out at the App Hub registering with your Windows Live ID (create
it if you do not have one). Once signed up at the App Hub, you can
register your physical device so you can debug in the real device.
Remember that you can add up to three devices. Using Visual Studio
and/or Expression Blend, you will be creating your application and
debugging using the emulator or the device you registered. Once the
application is created, you need to submit the application to the
certification process.
In order to ensure that your
application will pass the Marketplace certification process, it would be
a good idea for you to read and understand the application
certification document found at http://go.microsoft.com/?linkid=9730558.
As part of the certification process, your application will go through a
series of validations against the application and content policies,
packaging, code, phone feature disclosure, language, and images
requirements. Your application will also get tested on reliability,
performance, resource management, phone functionality uses, and
security. The certification process is in place to help promote quality
applications to consumers, to protect consumers from malwares, and
protect Microsoft services.
Once the application passes the
certification process, it will be deployed to the Marketplace and
downloaded and used by the consumer. The consumer will use your
application and provide ratings and comments, and reports can be
generated by you from the App Hub to show how your application is
performing in the Marketplace. Based on the feedback you receive, you
can choose to deploy an updated version that contains bug fixes and new
features to users. Your ultimate goal is to create a compelling
application that you know consumers will use and publish to the
Marketplace. The Marketplace will cost $99 annually, which will give you
access to the Windows Phone Marketplace and the Xbox 360 Marketplace.
In the Windows Phone Marketplace, you can submit an unlimited number of
paid applications and you can submit five free applications. Additional
submissions will cost $19.99. In the Xbox 360 Marketplace, you can
submit up to ten games.
You will be able to observe any
Marketplace activities through the report provided, like comments,
ratings, and how many sold, so that you can effectively improve sales
and marketing efforts.
When your application is
bought by consumers, Microsoft will take 30% and you get to keep 70%.
Also you get your money deposited directly to your bank, and your
account will be activated to receive money only when you make your first
sale of $200.