With Windows 10 coming soon it is time to consider, how you will get your app onto the new platform.
There is a multitude of options:
- Build responsively designed Universal Windows Platform apps in XAML/C# directly to Windows 10 that run on all supported platforms from Raspberry Pie 2 to Xbox, Surface Hub or even Hololens.
- Project Astoria will allow you to create a Windows 10 Mobile app directly from your Android code and use whichever IDE you prefer.
- Project Centennial makes it possible to package .NET and Win32 based applications as Universal Windows Platform apps.
- With Project Islandwood you can import an Xcode project into Visual Studio and build a Universal Windows Platform app from it.
- Project Westminister packages a website into a Universal Windows Platform app with access to specific Windows APIs.
- Use html-based cross-platform approaches such as Cordova or appcelerator to create Windows apps.
- Use Xamarin to write applications in C# that shares code and runs natively on iOS, Android, Windows and Mac or Xamarin Forms to also write shared UI with XAML.
- Unity makes it possible to share code on a huge range of platforms. Mostly for 3D game development though.
- Build a Universal Windows app for Windows 8.1 and Windows Phone 8.1. They should be able to run without modifications directly in Windows 10 and Windows 10 Mobile. In other words, if you already have an app in the Store, you can simply “do nothing”.
In this post I’ll take a brief look at the “do nothing” approach.
We’ve build a Windows 8 / Windows Phone 8.1 universal app for a customer. That customer would like to be ready for Windows 10, but is not really interested in taking the leap to a new Universal Windows Platform app specifically for Windows 10. Not least because then they would have no support for Windows 8-ish devices.
So the solution was to simply test the existing app on the new Windows and see if Microsoft really does deliver the automagic solution they claim.
To test I used my HP Spectre x360 from BUILD (yay!) with build 10077 of the Windows 10 insider preview and a Nokia Lumia 620 with insider preview 10.0.12562.84. Especially the Windows Phone upgrade was tedious. It should be easy to follow the instructions at insider.windows.com, install an app from the store and use the regular update routine. In my case the phone (which is not regularly used) had to go through a 3-4 hour long Windows Phone 8 update including Store updates of the built-in apps, before it could begin the Windows 10 update process, which also took the better part of 2 hours to complete. Lots of rebooting during the update and a lot of “is it even doing anything” speculations on the way. But with patience the aging cheap-phone actually runs Windows 10 Mobile with Outlook, Spartan browser and all. Not bad at all. Also not stable yet, but then again, they still have not set a release date for Windows 10 Mobile.
I then wrote down all the use-cases for the app, executed tests on both devices and compared to how it works on Windows 8.1 in a virtual machine on my MacBook. The results were quite boring: everything seems to work…
Well almost everything. The app lacks its splash screen on Windows 10 Mobile, but so does most of the built-in apps. And then there was one actual error in the app on mobile. The desktop/tablet version really seems to “just work”. Since Mobile is still unstable and has no release date, we decided to not begin debugging the error quite yet.
The real differences to running the app in Windows 8 is that the app runs in a resizeable window and the charms-bar and commands bar cannot be invoked by swiping in from the right/bottom. However, our app does lay out itself neatly in different window sizes and the burger-menu in the top left hand corner provides access to the bars of the past. Not exactly intuitive, but then again, it wasn’t intuitive before either.
So, so far it seems that the simple approach really is THAT simple.