Usually, when there is a great app idea there is also a tendency to try to build it for every platform that exists – iOS, Android, Windows etc.
Developing a quality app that runs well on one device is hard and demanding enough and building it simultaneously for other platforms can harden it even more since it is a complex process.
If you are a beginner, newcomer or first-time entrepreneur with no products on the market, is often advised to start with building only for one platform. This way you can save money and time while finding your first users. Also this way you can avoid future costs that changes may require in the case of multiple devices. Usually, from the two major platform iOS is preferred, since it’s relatively easier to launch and it’s not a very segmented platform.
But are you missing out on something? Would it be possible to launch on both?
I’ll present you the options, advantages and disadvantages separately for launching on both iOS and Android.
WHY IS IOS PREFERRED FIRST?
We know the story of many popular apps like Instagram, Path etc. that were first built on iOS, and after only a considerable time ported to other platforms like Android. In these cases even when the app was showing an immediate promise the developers launched on Android only after they made the iPhone experience as solid as possible.
But why is there still a lack of impressive and successful apps that were first built on Android? Although there are much more Android users than iOS why do startups start their app on iOS?
The quick answers and reasons we found to this question:
- the ROI is usually higher on iOS apps – the average iOS user spends substantially more on apps than the average Android user.
According to Developer Economics VisionMobile report for Q3 2015 which was published in July 2015, Apple grants developers exclusive access to the market of users with the highest incomes. This way developers create higher quality apps for Apple’s platforms competing for the attention of users, who can afford Apple products and are likely to spend more on apps. The experience the users have with an iPhone plays the role of an introduction device to the Apple ecosystem. In the near future iPhone isn’t going to lose many high-end customers to Androids favor, so developing and launching app’s on iOS is still considered a solid base
- there are only two types of devices you have to build for:iPhone/iPod and iPad, so iOS makes building the UI and UX easy. In the case of Android apps you can encounter a lot more device segmentation (screen sizes, dpi, hardware capabilities) and for different manufacturers. Developers mention also a severe OS fragmentation across the devices, which makes the QA difficult in Android.
- iOS is considered more UI/UX friendly. The Interface Builder built into the Xcode makes UI easy to handle. Though on Android there are many other possibilities to make the app building and designing more interesting it is much more time consuming.
- The downloads from the app store which are considered previous success stories that speak for themselves are often considered an example to follow
Choosing between Android or iOS
If you are planning to launch your app only on one platform it’s likely you’re deciding between Android and Apple iOS.
The two companies account for over 90% of the smartphone market share.
Nowadays that the app economy is maturing and moving towards more complex revenue models Android’s reach became a considerable one. Although Apple users spend more on one transaction when purchasing apps the quantity of the users buying from Android devices is increasing and will compensate in the next few years.
Android is still the most popular platform and is targeted by 71% of all mobile developers, but iOS dominates the profit share, generating more than 83% more revenue for app makers than Android.
HOW TO LAUNCH ON IOS
- Get Xcode – Apple’s IDE for both Mac and iOS apps, is the graphical interface you’ll use to write apps and to manage your project. Note that this comes included with everything you need to write code for iOS
- Get familiar with Xcode – beside including everything to help you create your app it includes editors for code and interface designs and also a powerful, integrated debugger
- Get familiar with Apple’s App Store Review Guidelines. Apple has specific rules and views on what apps they allow in their store, so it is strongly advisable to read this before you try to make your app. Also you can check the list of rejected apps to learn from others mistakes and make an app without crashes and unfinished, broken links
- A numerous Apple’s APIs have their own set review gidelines. If you were thinking about integrating your app with Apple Pay, HealthKit or HomeKit it’s better to know these guidelines as well.
- Apple has it’s own design Guidelines, because they want the same basic UI elements to be used in order to create a consistency in their store.You can download well elaborated guidelines and resources for this from Apple’s developer page.
- Use iOS Simulator to test your app using Instruments and other tools before distributing your app
- Test your app via TestFlight so you can hear beta testers opinion and make improvements if needed before launching it
HOW TO LAUNCH ON ANDROID
- You will do your programming in Java – so Java programming language is necessary and design your layouts in XML files – hence you need to learn XML.
- You will have to use a build tool to compile all the project files and zip them together in a .apk file for testing it on Android devices or submitting it to Google Play
- All the files will be managed by the default IDE called Eclipse or by Android Studio, which is a good option if you want to get a jump start on the future.
- ADB tool is helpful to make changes to your devices when it’s plugged into your computer and it’s included int he Android SDK.
- Google is focusing on teaching its developers to create apps that not only work well but also have a nice design. For this is important to consult the Android Design Guidelines
- Is advisable before launching your app to test it. You can test it on HockeyApp as an example
Also when choosing between iOS and Android you should consider the following:
1. If your app’s market is Asia, Africa or South America you should choose Android, since here Android has a large advantage compared to Apple.
In the case your market is Europe, Oceania or North America you should choose Apple because here customers have a higher income and there is a tendency for iPhones and Apple apps.
2. If you have plans to make money through in-app purchases you should consider iOS apps. Apple generates with 45% more revenue per user than Google does from Android when talking about in-app purchases.
3. When designing the same app for Android devices the costs can be higher due to the large number of devices you need compared to Apple where you only have to take into consideration iPhone/iPod and iPad.
4. The real differentiators between iOS and Andorid are their users. If you are building a paid app choose iOS, since iOS customers are more loyal and their spending powers are considerably higher compared to Android customers.
Creating cross-platform elements
Current data from the State of the Developer Nation report reveals that for popular apps being iOS-only or iOS-first will make no longer sense. 37% of the total mobile developers are currently targeting both iOS and Android and this number is expected to grow.
Counting only those developers who make a living out of developing apps (excluding hobbyists and explorers) than the percentage of supporting both platforms reaches up to 44%.
We can observe that the importance of creating cross-platform apps is increasing. Cross-platform app development provides great cost saving advantages by developing one app that can run over multiple platforms.
But how can this be done?
There are several cross-platform tools that can help you build a single source development approach that can be deployed on various platforms with minimum changes.
Depending on what coding language you are used to can choose from several cross-platform tools like:
- Xamarin Tools – allows you to build iOS or Android app with C# and share a big part of the code. You can end up with a fully native application with fully native UI eparately on each platform. According to developers who used this tool you will be able to reuse around 60-75% of your code.
- Appcelerator Titanium – with the help of this tool you can actually write a cross-platform UI. For example in Titanium you can programmatically declare a check-box and specify its layout and attributes. The check-box will appear as a real native Android check-box on Android and a real native iOS check-box on iOS. Sure there will be cases when you will have to make some part of your code conditional based on the platforms.
For now it might make sense to start with the two big platforms, but you shouldn’t miss from sight the Windows platform. Even with its 2-3% global market share, Windows Phone has around 80 million users, a number that is not negligible. Microsoft’s Windows Phone may not be popular, but it is persistent even in 2016.
Focusing on launching your app first on iOS and reaching customers with higher spending power, opting for a presence on the most popular platform and developing an Android app or building a cross-platform app with the help of the cross-platform tools? We presented you the options, advantages, disadvantages and the required skills. The choice remains yours.
Launching your first app? Make sure to check out our previous post containing useful tips for launching a mobile app.