Windows Phone 8 added exciting new features that you can make use in your app. I decided to upgrade my app Near Me to Windows Phone 8.

I had two choices going for the upgrade, migrate my app to Windows Phone 8 or maintain two separate versions of the app, one for Windows Phone 7.x and another for Windows Phone 8. I went ahead with the second option. To maintain both versions, I decided to use branching in source control. I use Team foundation service as my source control and wanted to leverage the branching capabilities. This way, I could merge any code from either version into the other version easily.

Post the branching, I selected the project in Visual Studio and said, “Upgrade to Windows Phone 8.0”. This was simple and my project was ready for Windows Phone 8. Well, almost.

I had referenced the Micrososft.Bcl.Async package via NuGet and this started giving problems along with the advertising SDK for Windows Phone. I then deleted both these references and added Windows Phone 8 versions of them.

Next stop was to start using Windows Phone 8 features. Here’s a list of changes that I had to do:

  1. Maps control
    Earlier I was using the Bing Maps control for showing the map, this had to be changed to Maps control in Windows Phone 8.
    Do make a note that the namespace declaration has also changed.
    xmlns
    :Microsoft_Phone_Controls_Maps=”clr-namespace:Microsoft.Phone.Controls.Maps;assembly=Microsoft.Phone.Controls.Maps”
    to
    xmlns:maps=”clr-namespace:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps”
    Then you also have to get a Map service token from the dev center for your app which is different from the earlier process for Bing.
    Using the new control gives access to caching and offline access to maps as explained by The Windows Phone Map Control by Adam Denning 
  2. Geolocation
    There has been a new addition of the Geolocation class to retrieve the phone current location. This has been well documented in this post Updating your Windows Phone Location code to use WinRT  by Adam Denning. However the new GetGeopositionAsync method was giving problems to me, and I had to create a similar wrapper on this method using the event pattern. I’ll write about it in another post.
  3. ReverseGeocodeQuery
    Windows Phone 8 has now introduced a new API(s) which allow the facility for reverse geocoding without the need of any external services. Thanks, to this I removed the Bing service reference with Microsoft.Phone.Maps.Services.ReverseGeocodeQuery . This API provides more details like street and pincode along with city name whenever available.
  4. Tiles
    Adding support for live tiles was the last change that I did in my process of upgrading to windows phone 8. I selected the Flip Tile template for my app after going through the Tile design guidelines for Windows Phone 8.This is how my live tile looks like.
    MainTile
    Secondary-Tile
  5. I have added support for pining results to start screen using secondary tile as well.

There are few more accounts of upgrading to Windows Phone 8, here is Scott Hanselman‘s account on his blog.

Resources on MSDN

Advertisements

Share your thoughts

Please log in using one of these methods to post your comment:

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