The end is near for Windows Mobile – and it’s been a long time coming. Although Microsoft extended support for the platform through 2020, application development tools for the operating system (OS) have not been updated since 2008. While this is not too big of an inconvenience for the average consumer, the demise of Windows Mobile is creating challenges for enterprise-level users.
Now, enterprises running Windows Mobile applications are determining a plan of action in preparation for the future. Many are looking to port their applications (often featuring legacy code) to a different platform, while others are trying to select a tool for new development projects. So, what’s next as we head towards a post-Windows Mobile world?
OS Options
Undoubtedly, the Android OS and iOS are filling the gap left by Windows Mobile. While iOS is a popular choice, Android’s flexible app store, easy side-loading and wide availability on rugged devices from leading hardware manufacturers make it the top option. Of course, Windows 10 Mobile is slowly rolling out; but, with so much uncertainty surrounding it and the length of time between updates, Android remains the recommended path. Remember that regardless of the platform you select, you will still need to port your code.
Also, consider the type of application you are running and what you want to do with your device. Do you need a touch screen interface or a keypad? A large or small screen? Does your device have to withstand harsh environments? All of these factors contribute to your platform selection.
Porting Code
Once you select your new platform, you’ll start exploring options for porting your applications. It is important to note that Windows Mobile code will not run on all three platforms – with Android and iOS, C# and VB.net will not work, and require rewriting. And, with Windows Phone, .NET Compact Framework is not 100 percent compatible with .NET Framework, therefore entailing significant rewriting of the user interface (UI). With these drawbacks in mind, it is easy to see that native development is best suited for brand new projects targeting a specific platform. This platform must be something that the enterprise plans to stick with in the long haul.
While it is entirely possible to start from scratch, you can save a great deal of time and effort by reusing some of your existing code with a cross-platform mobile development solution. One of these solutions is Xamarin, which offers the toolset, framework and compilers that allow C# code to run on multiple platforms – Android, iOS or Windows 10 Mobile – with native performance. Basically, the tool allows you to “copy and paste” the C# business logic from a Windows Mobile app and reuse it in a ported app. However, you will still have to write and design a new UI, as it not reusable.
If you are porting a web application using HTML 5 and JavaScript, Adobe PhoneGap is a great tool. Essentially, PhoneGap allows you to run a webpage remotely on a device with an extension that allows access to device features like the file system, barcode scanner and camera. PhoneGap is ideal for existing web projects that you need to mobilize or can reuse. It is also suited for internal, line-of-business apps and for targeting multiple platforms with minimal effort.
A Few Final Considerations
Whether you end up reusing some of your code or starting from scratch as you shift from Windows Mobile, keep in mind the following:
- Re-think your UI: Since you can’t port over a UI, take the time to really re-think how you want it to look on your new platform. How does it work? How does the screen go from one screen to another? And, how can you make it even better than it was with Windows Mobile?
- Analyze Code: Analyze your code to see how your business logic is separated, rather than tangled, in the UI code. This will help you determine which pieces of code you can and cannot reuse.
- Don’t Let Cost Deter You: Especially if you are performing a mass migration, understand that you are going to have to spend some capital to “get out” of Windows Mobile. But, think about it: what is the real cost of becoming stuck on a legacy device that is no longer produced?
- Partner with an Expert: If you don’t have the resources or expertise on staff to drive your migration, consult an outside expert. A third-party vendor can augment your development team and also guide you through selecting a new platform.
If your company relies on Windows Mobile applications, no need to worry – you have plenty of time to make the migration. Now is the time to draw up a game plan and explore your options. You may even find that your new platform will bring you greater efficiency, accuracy and connectivity.