Mobile devices and mobile operating systems
There are a big number of smartphones and tablets on the market, each having a given operating system and it is produced by a given manufacturer. We live in the years when the number of mobile phones overcomes the number of desktop and laptop computers, and the difference is still growing (Google is reporting that there are more searches from mobile now than from desktops).
There are some stores today where we can publish our mobile application based on its operating system. There are some signs that the number of devices Android is the winner in the market (~70%), followed by iOS (~20%). Windows Phone has just a few percents but they choose to invest in mobile in the last time and our application can be also available to other Windows 10 devices like PC, tablet, Xbox due to UWP (Windows 10 is around 25% from desktop OS market). Here is the list of major mobile operating systems on the market:
|Android phones and tablets||Google Android||PlayStore | Android(Java)|
|iPhone and iPad||Apple iOs||AppStore | Objective-C or Swift|
|Microsoft phones and tablets||Windows Phone||WindowsStore | C#, Visual Basic|
Google is the owner of Android OS and the devices are manufactured by many others like Samsung, Motorola, etc. There is a reference device Google Pixel series manufactured by Google. Till now it was Nexus, but the manufacturer was not Google. The programming language is Java (Android is derived from Java), and the development tool is Android Studio (based on IntelliJ Idea now, in the past was Eclipse) which can run on Linux, Windows or Mac operation systems.
Apple is the owner of the iOs operating system and is also the manufacturer of the iPhones and iPads. The programming language in Objective C with the addition of a more scripting language named Swift. The development tool is named XCode, and we need a Mac OS system to develop our application.
Windows Phone OS
Microsoft is the owner of Windows Phone operating system and is manufacturing itself some physical devices – based on acquired Nokia company. Starting with version 10, the Windows and Windows Phone are sharing the same store and is possible to publish a mobile app and will be available on mobile and desktop at the same time due to Universal Windows Platform – UWP. We can program in C# or other .Net language. The development tool is Microsoft Visio Studio available on Windows OS.
It is hard to develop applications for all the stores because we have to know a multitude of languages Android(Java) for Java, Objective-C or Swift for iOs, C# or Visual Basic for Windows. A solution for this (write once publish everywhere) is to create hybrid applications using tools like Ionic.
Mobile App stores
Publishing to the app store is simple in the case of Google Play store because there are no so many reviews. But will be more difficult with the Apple AppStore and Windows Store. We have to improve our application usability to be accepted in the store. We can use a professional template from Ionic Market an official Ionic market for starters, plugins, and themes. Now we will describe the steps that should de follow to publish the app in all three stores.
Google Play Store
The Android store is Google Play – our application is easily accepted (in hours) on this store. There are many free applications in this store, and their users are in general not paying for apps. Will cost us $25 per life for publishing in this store and Google takes 30% of revenue. The user receives 70% of revenue.
First, we have to create a Play Developer account, and there we have to create an application and edit our Store Listing. Title and Full Description are important for ASO – be aware that around 60% of users are coming from store searches. In Manage Releases we will upload our .apk files.
Apple App Store
The store is Apple Store – our application is verified in detail and takes around one week to be published. We can make more money from this store, and in general, there are more payable applications than free. We pay $99 per year for publishing on this store.
For publishing, we need to have an Apple Id. Then we have to go to our Apple developer account in the area named Certificates, Identifiers & Profiles. There we have to create an application id. Then, we have to go to our iTunes Connect account where we have to request a new application using New App using the application identifier created in the previews step. There we have to complete App Information and other application data before submitting it for approval.
Also, we have to upload the binary file, and this can be done in two ways. The first option is to use Product/Archive option from Xcode. Second is using a distinct application named Application Loader.
Windows App Store
The store for Windows applications is Windows Store and is not so rich in applications like the previous stores. We have to pay $40 for starting publishing in this store. The advantage of this store is that it is a unified store for all Windows 10 applications and we can publish our application to all Windows 10 devices.
For building our application we need a Windows 10 machine with Visual Studio 2015 or 2017 installed (we can get one for free usage for 1 month or we can buy one forever Windows 10 preinstalled with Visual Studio Community Edition).
We can create the deployment artifacts in Project/Store/Create App Packages and there we can choose to link to an existing application definition from our Windows Developer Center account or to create a new one. The package will be signed automatically and we have to upload it manually to the store using Project/Store/Upload App Packages.
We don’t have support in Ionic 2 for generating icons and splash screen resources like in iOs and Android using ionic resources command but we can generate all the icons and splash screens using Properties/Visual Assets option from Visual Studio. Also, Windows 10 resources can be generated using this online tool.