It is not always obvious which app platform is best for you. If you are wondering which is the best mobile app development platform(s) to focus your time and money on, this post will give you the pros and cons that can help you decide where to start or where to go next.
The first thing you have to ask yourself is if you want to create a hybrid app or a completely native app. A hybrid app is best described as a website wrapped in a native app.
Hybrid apps are easy to develop and can be a good way to keep your development costs low. Since a majority of the code is written in HTML, JavaScript and CSS, it is easy to port the app to any other platform with very little additional development work.
Hybrid apps are usually easy to identify because of their clunkier design. They will never be quite as smooth or polished as a good native app, which leads to a poor user experience.
They can also be a huge pain to maintain and never seem to be able to deliver on the promise of complete portability. This is one of the reasons why Facebook decided to drop their hybrid app and create native apps.
The only time when it seems to be advantageous to create a hybrid app, is when you need to get a very simple app out the door quickly, with the expectation that it will not be around for long, usually to be replaced with a native app. Otherwise, it is better to just start developing for one or more of the other native platforms from the beginning.
Android allows any device manufacturer to get up and running quickly and appeal to the masses with affordable phones and tablets, similar to what Windows did for desktop computers. This means that Android has a much larger user base and more potential users of your app. There are also a minimal amount of rules when it comes to publishing apps on Google Play and no rules when it comes to publishing on other Android marketplaces.
There are two big downsides to developing Android apps. On the whole, Android developers make less money and there is a lot of fragmentation that needs to be accounted and tested for.
According to the Android Developers blog, as of February 4, 2014, this is the breakdown on how many devices are using the various versions of Android.
As you can see, a dismal 10.7% of users are using the two most recent versions of the OS. Take into account the five most used versions, spread across dozens of devices with custom manufacturer implementations and making your app run as you intended requires a lot of testing and development time.
There is no doubt that given the reach of Android devices across the world, you will need to have an Android version of your app sooner or later. But the complexity of testing for many devices and operating systems, it might not be the best place to start.
You should also consider the goals for your app. If you are focused on maximizing revenue, Android should be your second choice. However, if you are only looking to maximize the number of users of your app, then Android is the clear winner.
Possibly the biggest argument for developing for iOS first is the fact that iOS app developers still make the most money. According to this Business Insider study, Android developers are only making $0.19 for every $1.00 that iOS developers make in revenue per download.
Developing and testing for iOS is also much simpler. As we look at the Fisku real time adoption tracker while writing this, 83.5% of all iOS users are on the current version, iOS7. Couple this with only a handful of devices that you have to test for and you can see why it is advantageous to start off with an iOS version of your app.
Of course, all of these benefits come at a price, you have less flexibility when creating iOS apps. There is a fairly strict approval process and you must conform to Apple's rules.
While this isn't usually an issue for a lot of apps, some apps like Swype will probably never be able to run on iOS because of the way that they alter basic operating system functions. Therefore, if you develop for iOS or not depends on what kind of app you have. Be sure to check Apple's guidelines first before beginning development.
If you can conform to Apple's rules, then the higher average revenue coupled with ease of testing are certainly big reasons to develop your first app on iOS. You will not get the same reach as with Android, so choosing iOS as your primary platform depends on the goals for your app.
If you really want to develop for Windows Phone, the good news is that Microsoft still has a lot of influence in the tech world and still will for some time to come. So for better or worse, there will still be a segment of the population that will buy a Windows Phone just because they still have a Windows computer. In some parts of the world (especially in Nokia territory), there are also added incentives for purchasing a Windows Phone, making them cheaper than even an Android.
Since fewer companies develop for Windows Phone, there is also an opportunity to create an app that is similar to an app that is already successful on iOS or Android, but not yet created for Windows Phone.
The bottom line is that Windows Phone only has 4% market share. Will your app have explosive growth if you only get to 4% of the total devices out there? Probably not.
There may be exceptions to target very niche audiences, but overall, you are not setting yourself up for success by starting with Windows Phone. A great camera can only take you so far and without a vibrant app ecosystem, a platform cannot expect to grow.
Windows Phone development should really be a distant third choice when it comes to creating apps. If you already have a stable Android and iOS versions, and have the development budget, then Windows Phone may be a viable option for you. But with a weak app store ecosystem and only 4% overall market share, it is a platform that you may want to ignore altogether.
It really is tough to justify why you would want to build a Blackberry app, but there are a couple of advantages. Just like with Windows Phone apps, there just isn't a whole lot of competition out there, so if you do create an app for Blackberry, you may be the only game in town. In addition, these devices are still favored by a small subset of the population that are generally in the highest income bracket that use Blackberry for the security benefits. Blackberry is also very committed to their developers. They provide a lot of support and you can create apps in almost any programming language.
The obvious downside is that Blackberry only controls 1% of the mobile device market. If you are looking to get a ton of downloads, this is not the platform to do it on.
If you want to create specialized business apps or have the resources to expand your existing market share, you may want to consider developing for Blackberry. Otherwise it is not a platform that most developers should even look at because of the tiny market share.
That was a quick summary of the major mobile platforms on the market and when you should consider developing for them. We hope that this has given you the information you need to figure out which one you should launch your next app on.
Which platform do you prefer and why?