How NOT to port an application from Windows Phone 7 to Windows 8


Back in March 2011 I spent a few hours developing a simple application for Windows Phone. The result was BMI Stones and Pounds – a very simple 3 screen application:

image

To better help Windows 8 early adopters build applications I realised I needed to get an application into the store so I could answer with certainty more of the store related questions I was getting plus get a feel for what it takes to port a Windows Phone 7 application to Windows 8. I had 2 hours free one evening end of October… the end result is BMI Stones and Pounds Lite – a very simple 1 screen application 🙂

image

The “process” was simple. I opened up two instances of Visual Studio 2012, one for the Phone application, one for the Windows 8 application. Then proceeded to copy across the “inner” XAML and the business logic classes. At which point I took some “shocking” short cuts and justified them to myself by adding “Lite” to the end of the app name. Good tip that… maybe not 🙂

Specifically:

  • I dropped persisting input
  • I combined it crudely into a single screen app
  • I cheated for my full screen view – it is the snap view (which was easy to do starting from phone) centred

But it worked, it passed certification (I followed my own store tips) and it is now live in the store.

If you want to really port a Windows Phone application, check out these links I gathered up earlier in the year, especially the Telerik case study:

Also check out http://channel9.msdn.com/coding4fun/blog/From-Windows-Phone-7-to-Windows-8-Metro-one-apps-journey

Happy porting…

Advertisements

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