25 March 2017
iOS (Apple’s operating system) and Android (Google’s operating system) are both options to develop for when producing an app but which should you choose? What are the advantages to each? Why should you develop for each? All are valid questions and commonly asked questions when we are asked about app development so we have decided to compare each and share our own personal thoughts.
iOS and Android dominate the current mobile market and this leaves users with a tough choice: which one should I choose to develop for and why?
iOS is the mobile operating system design and developed by Apple for their line of mobile devices from iPhone to iPad. Because Apple produce both their software and hardware internally you can be sure that both will be updated frequently and in sync with one another. When iOS9 released it was active across 50% of all of Apple’s devices in just 4 days: that’s fast! As an added point, due to there being over 15,000 Android devices this causes hardware fragmentation which, in turn, causes further software fragmentation. Overall this means that its extremely costly and time intensive if you want to have the latest Android phone with the latest OS.
Linked into this is the cross-device synching power that iOS devices have, no other products have software-hardware integration that is as responsive as iOS. With iOS devices you can take calls that would come through your phone on your computer and finish reading articles you started on your tablet, on your phone in the same point you left off from. The reliable software updates mean that you can stay with the same piece of hardware for 5-6 years before the software becomes outdated, however most Apple fans switch every 2-3 years.
The level of creativity and quality of the apps that are released on iOS is visibly higher than that of Android, although Android have improved every aspect of their apps over the past few years. iOS apps are a “walled garden” as most iOS developers are exclusive to that OS but ultimately this is because people on iOS devices are more willing to pay for the apps that are available, causing developers to go the extra mile in order to give consumers value for money and maintain a good reputation.
Finally as most people know iOS devices have far less malware and viruses when compared to Android. This is because Apple do not let you alter the OS in a way that is significant enough to embed viruses and, for obvious reasons, only allows you to install apps via the App Store. Furthermore Apple does not allow third-party app stores and had a rigorous testing process to ensure that the apps that are available on iOS are of good quality and malware free.
The competitor: Android, is the OS developed by Google. Unlike iOS, Android is open source and although initially developed by Google all Android phone manufacturers alter each version of Android for their phone line. This means that Android has far more available devices than iOS and as a result Android has a larger number of apps available for download than iOS.
Simply put: Android devices are typically cheaper than their iOS counterparts due to the wide range of hardware available. However due to their being a huge number of Android devices the timelines for each are infrequent meaning you could buy a new device with features that an older device may not have.
The hardware for Android phones is far more diverse than that of iOS because Android manufacturers do not have to worry about fully developing a new OS for each device as Google provides a majority of the features needed in the initial base version of Android. The customisation options of Android far exceed that of iOS, this is, again, due to the open source nature of Android as an OS. It inevitably has more customisation options than that of iOS.
Another feature Android devices secure over iOS is the universal charging port, universally Android devices have a micro USB charging port and this is the same on all devices other than iOS.
When it comes down to it the final decision comes from personal opinion, as a studio who primarily codes for iOS here is why we feel that iOS offers greater potential than Android from an experience point of view. However that isn’t to say we never develop Android apps.
iOS has a great SDK that is easier to implement with Swift (the language for iOS) than the Java (language for Android) equivalent. Furthermore the support pages for iOS coding are far simpler and easier to understand than that of Android making for easy quick-fixes when problems arise. As well as this the UI (User Interface) for iOS is often more consistent along with an easier and more effective debug system within Swift.