OPINION - Suggestions for developer migration from Windows Mobile

6 Nov 2020

Disclaimer: The views and opinions expressed in this article are those of the authors and do not necessarily reflect the official policy or position of Juniper Systems as an organization.

Over the last three to four decades, software developers for our rugged handheld computer products have had to migrate their app software from custom Polycode (for the Omnidata Polycorders with PolyOp OS), then to DOS, then Windows CE, then Windows Mobile, and now to Windows 10 and Android. Some developers have tried or are trying to use "platform-agnostic" tools such as general Java or HTML5 with CSS, but have found that access to native functions on each platform is limited.

With the latest migration from Windows Embedded Handheld 6.5 (formerly Windows Mobile) to Windows 10 and Android, one of our lead application software engineers has provided the following comments.

"Our Geode Connect application is written using Xamarin to run cross platform (such as on Windows and even iOS). If your app is only going to target a single platform (say Android) then it is probably best to use the native tooling (ie Java/Kotlin with Android Studio) to avoid some of the overhead that comes with development in Xamarin. However, if you want to share code between Android, Windows, and/or iOS then Xamarin is a great option, especially if C# is the programming language with which you are most familiar.

We've used Xamarin for a couple of projects here at Juniper. Xamarin was used to share a large amount of code between our iOS and Windows Geode Connect applications.

Use Xamarin if:

I don’t have much experience with NativeScript, so I can’t provide much advice there. My personal feeling is that Xamarin or React Native are better alternatives.

Use React Native if:

Write native for the device (ie Java/Kotlin for Android, Swift/ObjC for iOS, C#/C++ for Windows) if…