This is the second multi-platform app that I have developed during the last 12 months. The apps have been developed using the cross-platform development environment Telerik Platform in conjunction with Apache Cordova and Kendo UI. They have been published to both Android and Apple stores.
All well and good.
In testing the app, several problems and defects were discovered. Some required additional development resource and were genuine defects in the code, but the majority were down to inconsistencies in the behaviour of Apple devices. That is to say, we discovered many problems during the testing cycle where the problem only applied to Apple, and not Android. In fact, we didn’t discover a single unique fault on the Android platform at all.
Everything about Apple is convoluted, cumbersome and far more difficult than it needs to be. Contrast this with Android, which just works. From setting up the development accounts, to setting up the testing environment, to provisioning the metadata for testing, to making specific amendments to the app to cater for Apple only (such as the issues we found with the way Apple handles local database storage, or the way it handles UI interaction), the entire platform is a headache to work with as a developer.
If this was any other platform, I wouldn’t work with it. I’m a developer, and my job is to create software, not to have to wrestle with the idiosyncrasies of a particular mobile platform that won’t play by the rules, and insists on creating its own rules instead. It’s like having to deal with a petulant teenager, rather than a mature adult. I’m quite surprised that the Apple platform exhibits so many idiosyncrasies when it should be a stable and mature platform by now.
At least Android works, that at least is something.