Windows Phone 8 development – How to start?

First what you do when you want to create new Windows Phone 8 application, of course, after installing all necessary software, is to create new project for Windows Phone development. Beside all templates that you have as for Windows Phone 7.1 there are three more new templates for creating games and HTML5 apps:

WP8Templates

You can find all details about installing software for Windows Phone 8.0 development and some requirements in my previous post Windows Phone SDK 8.0.

Target platform for app

With new Windows Phone SDK 8.0 on Visual Studio 2012 we can create application for Windows Phone 7.1 or Windows Phone 8.0 application:

PlatformTarget

If you choose Windows Phone 7.1 as target platform your application would work on both platforms: WP 7.1 and WP 8.0. But if you choose WP OS 8.0 your application would work only on new Operating system (WP 8.0).

Solution Explorer and project files

New folder in Solution Explorer is Assets that group all pictures for application UI design:

SolutionExplorer

LocalizedString.cs provides access to string resources that gives you ability to provide localizations in Windows Phone 8.0 applications.

Notes that now we have Alignment tool out of the box in new project for Windows Phone 8.0. To use grid in design time (not only in debug mode as MetroGridHelper) just uncomment last line of XAML code in MainPage.xaml with Image tag that use AlignmentGrid.png:

AlignmentGridXaml

After this, you’ll have grid for alignment in design time as in debug time what is really great help. Example for design time process:

AlignmentGridDesignTime

This grid really helps for alignment of items on the page and calculating better distance between items.

If you create new page and want AlignmentGrid in that page all you need to do is to copy part of the XAML code with Image tag at the end of the page and that’s it. So simply.

Tiles folder is for tiles file for 3 types available sizes – small, normal and wide. Each type could be with 3 different types – Iconic, Flip and Cycle. In this example we have Iconic and Flip types.

Manifest file

WMAppManifest file now have designer for easier manipulation of manifest data. Designer is grouped into four groups:

  • Application UI
  • Capabilities
  • Requirements
  • Packaging

AppManifest

Windows Phone 8 development support 3 resolutions regarding UI:

  • WVGA (480 x 800); Aspect ratio 15:9
  • WXGA (768 x 1280); Aspect ratio 15:9
  • 720p (720 x 1280); Aspect ratio 16:9

For Tiles and application icons, you have to include images only for WXGA resolution. The phone automatically scales the images to the correct size for WVGA and 720p screens.

As for Capabilities, you can turn on/off  capabilities used by your application:

AppManifest-Capabilities

Requirements are hardware requirements that your application need to fulfill in order to work/install and this is new in WP 8.0. If one of the criteria don’t meet with phone specification, application won’t install on phone:

HardwareRequirments

And finally, Packaging is where you specify package information such as Author, Publisher, Default Language:

Packaging

After this introduction you can try to create some demo application with capabilities that new SDK provide and test in in Emulator or better on your new Windows Phone 8 device.

Change target OS version for existing WP 7.1 project

If you open your old project application (WP 7.1) with new environment and change target operating system version (Properties on your project in Solution Explorer, Application tab), you can’t go back:

ChangeTargetOS

Scenario for the future

What would be scenario for your application is up to you. If you create new apps as Windows Phone 8.0 version, than you can’t reach millions of current WP 7.1 users. Otherwise, if you want to use new stuff you would probably have two version: one for WP 7.1 without capabilities for WP 8.0 and another app just for WP 8.0 version. When you publish app in Windows Phone Dev Store, you can provide two xap files for one application to reach both of the Windows Phone world.

About Spaso Lazarevic

Spaso Lazarevic is Senior Software Developer working with Microsoft technologies. Leader of .NET User Group Bijeljina, speaker at Microsoft events, writter and blogger. Microsoft MVP for Visual C#.
This entry was posted in Programming and tagged . Bookmark the permalink.

One Response to Windows Phone 8 development – How to start?

  1. essatrout says:

    I recommend https://poeditor.com/ for the best windows app localization. It organizes the files really nicely and introduces helping tools such as reference language to make the process faster.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s