flagship smartphones aa (1 of 18)
There are multiple operating systems powering our mobile devices today. For both indie developers and large companies, there is a critical question that needs to be answered before development begins:  what platform should be targeted first? For larger companies, with more resources, development can be done simultaneously for different platforms, while for smaller shops, it is a very critical question, which could determine the success or failure of the business.

In this article, we discuss seven reasons why we believe developers should develop apps for Android devices first, rather than iOS, Windows and/or Blackberry.

7. Portability

Native Android apps are developed using the Java programming language, and can easily be ported to other mobile operating systems like Blackberry, Symbian and Ubuntu. In addition, Android apps can also be ported easily to Chrome OS. Not surprisingly, Microsoft has also announced that it will provide an easy method to port Android apps to Windows 10 devices.

6. Android Studio

androidstudio
Android Studio is an excellent IDE, based on the equally excellent IntelliJ IDE. As the name suggests, Android Studio is an IDE designed and developed specifically for Android app development. It is blazingly fast and efficient, and you can setup a new Android project for different types of Android apps within seconds. When Android was launched, Android app development was done with Eclipse and the Android Developer Tools plugin. However, that changed with the release of Android Studio. Some key features include:

  • Gradle-based build system
  • Live-layout WYSIWYG Editor with real time app layout rendering
  • Option to preview a layout on multiple screen configurations while editing
  • Build variants and multiple apk file generation
  • Lint tools (used to catch usability, performance, version compatibility and other issues)
  • Supports developing Android Wear, TV and Auto apps
  • Enables app integration with Google Cloud Platform (App Engine and Google Cloud Messaging)

5. Java

java_logo
Java is a proven and powerful programming language, used on a wide range of devices and operating systems. Learning Java can open doors for  other opportunities, including the ability to develop applications for other operating systems (Windows, Linux) and devices. Developing for iOS, on the other hand, requires that you learn one of Apple’s development languages (Objective C or Swift). Both of these languages are really only used for Apple-centric development (iOS and OS X), and the skills needed to develop in these languages cannot be carried over to other operating systems. But to be fair, Apple has announced Swift will be open sourced, with Linux tools available before the end of the year.

4. Google Play Store

google_play_store_logo
Apps deployed to the Google Play store are available for download by users within a few hours, compared to a few weeks for Apple’s App Store. An app can literally be updated multiple times a day on the Google play store, in response to user complaints and/or issues, while on the App store, your app would have to pass through the same lengthy process whenever you submit an update and/or bug fix. For a new app or game that might need to be constantly and speedily refined and updated in response to user feedback, the Play Store is the perfect platform.

Another excellent feature of the Play Store is the ability to release an app as alpha and/or beta releases, which would be available only to members of a selected group of testers. With this, you can provide early access to a subset of users, and use their feedback to polish your app before finally releasing it to the general public. You can also perform a gradual/staged roll out of an update. With the staged rollout, you specify what percentage of users should get the update, and you can then monitor the feedback and crash reports before increasing the percentage of users to receive the update.

3. Low barrier of entry

To develop for iOS devices, a developer must use a Mac. However, Android app development can be done on Windows, Mac and Linux. Also, to register as a developer on the Apple App Store requires a yearly fee of $99, whereas to register as a developer on the Google Play Store requires a one time payment of $25. In plain terms, all a developer needs to begin developing and releasing Android apps is a $25 payment, and a computer, while for iOS, you will require a Mac and a $99 yearly subscription.

2. Profitability

profitThe general consensus has always been that the iPhone is used by richer and more affluent users, and so, iPhone users are more likely to spend money on apps than Android users. This might have been true in the past, but not any more. In most app categories, Android apps have been found to be as profitable (even more profitable in some instances) as iPhone apps, both for initial app purchases and for in-app purchases. Also, with many apps using a free with ads model, as long as the ads are being shown to app users, the app generates income. According to DAU-UP, the average revenue per user for Android games was a measly 20% of that from iOS games in January 2014. By December 2014, the figure had spiked to 65%. In addition, advertising costs are generally lower on Android devices, which means that apps can advertise to more users on Android devices than users on iOS devices for the same amount.

1. Market share

mobile_os_sample_market_share
This has to be the number one reason why indie developers should develop for Android first. According to IDC, Android absolutely dominated the number of smartphones shipped worldwide in the first three months of 2015, with 78% market share. The estimated total number of Android devices in the hands of consumers, as at December 2014, according to statista.com, lies north of 1.6 billion. This is a staggering amount, and a very large potential market of users. Compare this with an estimated 395 million iOS devices, and 46 million and 45 million Windows and Blackberry devices respectively. If you are designing an app (or game) for the general public, it makes economic sense to target the platform that would give you the greatest access to potential users.

For developers looking to maximize their chances of success, be it from a mobile game or niche app, targeting Android devices first can mean the difference between success and obscurity. Do you agree, or have another reason(s) for going Android first? Hit the comments and let us know.

Hot Java Android Coding Bundle

If you are serious about coding you should checkout our Android Coding bundle course with 60+ Hours of Training.
Get all 5 courses for just: $29  $657 [95% off]