If you’re involved in developing mobile apps for use within your enterprise and you have a BYOD policy, things could soon get even worse: If Windows Phone 8 gains traction, then the number of platforms you may have to support will expand from two to three.
Differences beween cross-platform mobile development tools
Xmarin is a C#-based platform where code is written generally for iOS and Android and compiled differently during the deployment. Xmarin is rather advanced, and allows users to call native API’s in the resulting application. Before compiling, Xmarin executes code on a .NET framework at runtime and gives a native dialect of either iOS or Android.
Rapidly growing market for cross-platform mobile app development
A more promising solution may be multi-platform development environments that let you develop a single code base and compile it to run on different mobile platforms. Xamarin, for example, lets you write apps in C#, calling any native platform APIs directly. The Xamarin compiler then bundles the .NET runtime and outputs a native ARM executable, packaged as an iOS or Android app.
Other options include Appcelerator Titanium and Adobe’s open-source PhoneGap. Cross-platform mobile app development tools increase productivity
When it comes to coding and maintenance, the whole point of these multi-platform development environments is that they should be easy to use and maintain. For example, Xamarin’s use of C# means that it should appeal to Windows developers. Plus, with Visual Studio add-ins, developers can develop Windows, iOS and Android apps from a single, familiar environment.
But, as Gartner researcher Kirk Knoernschild points out, using a multi-platform environment doesn’t necessarily mean you can develop for two platforms with the same effort that you would need to develop for one. He explains it in more detail by saying “If you want to take advantage of specific platform capabilities, you have to use platform-specific code, more info on this website - https://jatapp.com/services/application-development/. If you’re only writing simple apps, you could have one code base — but as soon as you try and leverage exclusive platform features, you can’t any more. For a complex app, the most you can hope for is 60 to 80 percent of the code [being] platform-agnostic. Even if you have to write platform-specific code, there are still advantages to using a multi-platform environment: “You’re writing in a single language, so there are still productivity gains to be had.”
Apps built with cross-platform mobile app development tools aren’t always aestethic
The interface elements don’t always look exactly the same as true iOS or Android elements. In the consumer space, there’s a risk that apps that don’t look like true iOS or Android apps simply won’t be accepted.
However, this type of visual differences probably isn’t a problem for developers making multiplatform apps for internal enterprise usage. Here the need is to get the functionality “out there,” rather than make the app look beautiful.