Научная статья на тему 'INVESTIGATION OF MOBILE APPLICATION DEVELOPMENT, PUBLISHING AND ECONOMIC INCOME STAGES: COMPARISON OF IOS AND ANDROID SYSTEMS'

INVESTIGATION OF MOBILE APPLICATION DEVELOPMENT, PUBLISHING AND ECONOMIC INCOME STAGES: COMPARISON OF IOS AND ANDROID SYSTEMS Текст научной статьи по специальности «Техника и технологии»

CC BY
57
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Endless light in science
Область наук
Ключевые слова
mobile application development / mobile app publishing / earning revenue from apps / android / ios

Аннотация научной статьи по технике и технологии, автор научной работы — Hasanguliyeva Matanat Muhammad, Alekbarov Alisafa Mammadhuseyn

the number of mobile applications has rapidly increased after the pervasiveness of smartphones developed by apple inc. And the release of google's android operating system on the market. The purpose of this study is to make the comparison of mobile applications developed on android operating system and ios operating system that are the leading mobile application platforms of the rapidly advancing it world in terms of software development, the phase of publishing the developed applications on these platforms and the steps that should be followed to earn income from these applications after publishing them. For the development stage, information was given about programming languages commonly used in the android operating system and ios operating system. For the publishing of mobile applications, the steps of publishing mobile applications on google application markets (google play) and apple application markets (appstore) were explicitly elucidated. For the economic income stage, it is explained how the applications created by mobile app developers can generate revenue after they are on the application market. Android and ios based mobile applications have positive and negative aspects compared to each other in the stage of development, publishing and revenue generation. It is predicted that the study will guide software developers who create android and ios based mobile applications.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «INVESTIGATION OF MOBILE APPLICATION DEVELOPMENT, PUBLISHING AND ECONOMIC INCOME STAGES: COMPARISON OF IOS AND ANDROID SYSTEMS»

INVESTIGATION OF MOBILE APPLICATION DEVELOPMENT, PUBLISHING AND ECONOMIC INCOME STAGES: COMPARISON OF IOS AND ANDROID

SYSTEMS

HASANGULIYEVA MATANAT MUHAMMAD

Azerbaijan State Oil and Industry University, Department of "Computer Engineering" Doctor of Philosophy in Technology, Docent

ALEKBAROV ALISAFA MAMMADHUSEYN

Azerbaijan State Oil and Industry University, "Computer engineering"

department, Master

Abstract: the number of mobile applications has rapidly increased after the pervasiveness of smartphones developed by apple inc. And the release of google's android operating system on the market. The purpose of this study is to make the comparison of mobile applications developed on android operating system and ios operating system that are the leading mobile application platforms of the rapidly advancing it world in terms of software development, the phase of publishing the developed applications on these platforms and the steps that should be followed to earn income from these applications after publishing them. For the development stage, information was given about programming languages commonly used in the android operating system and ios operating system. For the publishing of mobile applications, the steps of publishing mobile applications on google application markets (google play) and apple application markets (appstore) were explicitly elucidated. For the economic income stage, it is explained how the applications created by mobile app developers can generate revenue after they are on the application market. Android and ios based mobile applications have positive and negative aspects compared to each other in the stage of development, publishing and revenue generation. It is predicted that the study will guide software developers who create android and ios based mobile applications.

Keywords: mobile application development, mobile app publishing, earning revenue from apps, android, ios

INTRODUCTION

As a result of smartphones becoming portable personal assistants, the interaction time with information technology and interest in mobile systems has increased (Aslay, Yildiz, Baran and Akar, 2018). Mobile applications, software developed for use on mobile devices, differ from desktop applications in terms of technology and device hardware. Current mobile devices offer users many applications commonly used on personal computers, reducing the need for personal computers (Kabakush, Dogru, & Chetin, 2015). The most commonly used operating systems on these devices are Google's Android operating system and Apple's IOS operating system. The Android operating system was founded in California in 2003 by Andy Rubin, Rich Miner, Nick Sears, and Chris White and was later acquired by Google in 2005 (Tufan, Baykara, Guler, & Avci, 2012). The Android operating system was released for public use with version 1.0 in 2008 (£akir & Tuminchin, 2017). IOS, developed by Apple Inc., is an operating system introduced in 2007 (Ozdemir, Akadal, £elik, & Reis, 2013). IOS is a Linux-based operating system (Buyukgoze, 2019). Initially known as iPhone OS, this operating system was first developed for the iPhone (Ozkochak, 2016) and later used on the iPod Touch and iPad as well. Applications and updates related to applications are accessible for the operating system used on mobile devices via Google Play Store for Android operating system and Apple Store for IOS operating system.

Each platform where applications will be published has its own specific criteria. Android, an open-source mobile operating system developed for portable devices like smartphones, is Linux-based. The Android platform is based on the security model of the Linux operating system, which is permission-based. According to this security model, users cannot access other users' files without

ОФ "Международный научно-исследовательский центр "Endless Light in Science"

permission. While the Android platform allows each user to control their security with their own permissions, the IOS platform maintains tight control and forces developers to write secure code using Application Programming Interfaces (APIs), thus preventing malicious applications from entering the app store (Buyukgoze, 2019). IOS operates as a closed system. Accordingly, in the IOS operating system, application developers cannot make changes to the code (Aytekin, Ayaz, Tumin^n, & Bekta§, 2019). Applications to be installed on the IOS operating system undergo a strict review process, and once approved, they are placed in the markets. Applications added to the markets start generating revenue after this stage.

In a report prepared by the analytics company Appfigures in 2017, it was noted that the number of applications in the Apple-owned App Store and the Google-owned Google Play Store had been steadily increasing until 2017. While Google Play continued to grow at a rate of approximately 30% with more than 3.6 million applications, the report indicated that the App Store was heading in a very different direction. At the end of 2017, it was observed that there were approximately 2.1 million IOS applications in the App Store, representing a 5% decrease compared to the existing 2.2 million applications. The report attributed this decline to a technical change that eliminated many older applications that had not been updated to support 64-bit architecture, in addition to Apple's tighter enforcement of review guidelines. However, the report also stated that this decline was not solely due to this reason; it mentioned that mobile app developers were overcoming platform barriers and migrating applications between platforms. According to the report, approximately 17.5k applications moved from IOS to Android, while about 7.5k applications moved from Android to IOS in 2017. Although the total number of platform changes, approximately 25k, may not seem significant, it was evident that developers were overcoming platform barriers and expanding their applications beyond the original version.

Figure 1 in the report shared by the research firm Consumer Intelligence Research Partners, LLC (CIRP, 2020) provides usage rates of iOS and Android operating systems.

0

201« March 2017 March 2017 March 2017 March 2017 March -Ai>droia -ios

Figure 1. Usage Rates of IOS and Android (CIRP, 2020)

In Figure 1, it can be observed that in the first quarter of 2020, the usage rate of IOS is 44%, while the usage rate of Android devices is 56%. Additionally, the report by the CIRP research firm indicates a noticeable increase in the number of IOS users after 2018. Although the number of Android users decreased after 2018, when compared, the number of users using Android is higher than IOS.

STAGES OF MOBILE APPLICATION DEVELOPMENT

The number of mobile applications is increasing day by day due to reasons such as the increase in device usage time, catering to all ages, and providing conveniences in daily life. Nowadays, in order to develop applications for evolving smart devices, it is necessary to know some programming languages. In addition to programming languages, visual materials that can be used in the interface of applications should be created according to material design principles for

ОФ "Международный научно-исследовательский центр "Endless Light in Science"

the applications to be of high quality, attractive, and effective. Furthermore, the design of the application can facilitate revenue generation by enabling it to progress to the top in application markets. Mobile applications should be prepared with universal design principles aiming to make all kinds of products and processes more inclusive (Shenel, Shenel and Gunaydin, 2019). The usage of mobile applications should be simple and understandable, and they should be prepared in a way that can be easily used considering the diversity in the target audience. A user-friendly interface that is easy to use, understandable, and adaptable enhances the interaction between the user and the application (Evren, 2016). User interfaces should be designed human-centrically (Akyol, 2014). Designs can be made more attractive by using color harmony and different design elements. After ensuring all of these, it is necessary to check whether the application works smoothly on different platforms. The layout of visuals and texts used on different devices (tablet, smartphone, desktop) should be reshaped.

Applications running on Android and IOS can collect information about user behavior by accessing the personal data stored on their phones through APIs (Thurm & Kane, 2010). Application developers should not share the data accessed by users on their phones with a third-party entity, organization, or application developer without users' consent. Using user data without obtaining approval poses a danger by developers who write applications for different platforms. For example, in 2011, it was observed that an application developer copied a user's address book and Facebook account using Facebook's mobile application, which caused the user's anger (Arthur, 2011). Attention should be paid to the permissions of applications created on different platforms. An application developer, as in Arthur's (2011) study, should know which permissions should be obtained in his application and that users should not access personal data on their mobile devices without permission. Programming languages that can be used to develop mobile applications are shown in Figure 2.

Figure 2. Programming Languages that Can Be Used in Mobile Applications

As shown in Figure 2, when developing a mobile application, it is necessary to know one of the languages such as Swift, Perl, Qml, C++, C#, Ruby, Java, Html 5, JavaScript, Python, Php, or Corona.

IOS MOBILE APPLICATION DEVELOPMENT

When developing IOS mobile applications, according to Apple's 2020 data, common missteps that can slow down the process or trigger a rejection should be checked to ensure smooth approval of the application. The review process is a good starting point for the smooth release of the application. The stages that developers should pay attention to during the application development process, according to Apple's 2020 data, are given below in order:

* The application should be tested for crashes and errors.

* It should be confirmed that the application information and top-level data are complete, accurate, and up-to-date.

* An effective demo account and login information, as well as any other hardware or resources that may be needed to review the application (e.g., login credentials or a sample QR code), should be provided.

* Backend services should be enabled to be live and accessible during the review.

* Detailed descriptions of inappropriate supporting features and in-app purchases, including supporting documents when appropriate, should be added to the application review notes.

* It should be checked whether the application is suitable for the iPhone interface.

By following these steps and conducting checks, the application can proceed to the publishing stage more quickly. Additionally, Apple emphasizes the importance of the application being simple, refined, innovative, and easy to use in terms of design. If the application does not work as intended after a while or is no longer actively supported, it may be removed from the App Store.

There are different programming languages for developing mobile applications, and each language has its own unique syntax rules. The process of writing language-specific commands is called coding or programming, and the resulting end product is called a program or application (Ersoy, Madran, & Gulbahar, 2011). Apple started programming with Objective-C and later continued with its own software language called Swift (Gungor, 2017).

OBJECTIVE-C

Objective-C programming language is a powerful programming language that allows application development on Apple products (Mac computers) licensed by Apple in 1988. In cases where there is no Mac computer, Objective-C can be used on OSX installed on a virtual machine. It is a superset of the C programming language that adds object-oriented features to the basic language (Egele, Kruegel, Kirda, & Vigna, 2011).

SWIFT

Due to the difficulty of Object-C grammar for programmers, a new language called Swift was released in 2014 (Emre & Yeten, 2018). Swift is a programming language that is easy to use and open source, and it can be used to write applications that run on Linux. It is written by leveraging many programming languages such as Objective-C, Rust, Haskell, Ruby, and Python. Despite Swift being one of the most popular programming languages globally, experienced developers have pointed out numerous issues with the toolset, difficult or unhelpful error messages, and the urgent need for improvement in the Swift compiler (Rebouchas et al., 2016).

SIMILARITIES BETWEEN SWIFT AND OBJECTIVE-C

Thanks to the similarities between the Objective-C and Swift languages, learning one after knowing the other will be easier for any application developer. Examining these similarities between the languages will benefit the development of mobile applications accordingly. These similarities are listed below in bullet points:

* Simple numerical types (Int, Float, Double) are present in Swift, just like in Objective-C.

* They have similar syntax for for...in enumeration.

* Apple products continue to be developed with both Swift and Objective-C.

Due to these similarities between Objective-C and Swift, application developers can learn the other language more quickly and easily once they know one of them. Learning both languages can be advantageous for practical and fast programming during the mobile application development process.

DIFFERENCES BETWEEN SWIFT AND OBJECTIVE-C

For application developers, it is beneficial to focus on the programming language that is practical in their field. However, if a specific programming language is not used, there are similarities as well as differences between Swift and Objective-C, and by examining these differences, one can choose the programming language. These differences can be examined in 5 main categories. The differences between Swift and Objective-C are presented below in bullet points:

* While the use of semicolons is mandatory in many programming languages, lines in Swift do not have to end with a semicolon (;).

* Header files, which exist in Objective-C, are not present in Swift.

* String expressions in Swift fully support Unicode.

* The syntax structure is much easier and simpler to understand compared to Objective-C.

* Memory management in Swift has been made more flexible. It allows developers to write their code comfortably and safely without wasting time, as in Objective-C.

Swift is a language that is easier to write and read compared to many programming languages. When compared to Objective-C, the number of lines of code required to perform the same operations is significantly reduced.

Therefore, considering these steps, mobile application developers will save time when writing mobile applications.

ANDROID MOBILE APPLICATION DEVELOPMENT

Android operating system is developed by Google, open source, and the most widely used operating system on today's tablet computers (Arslan, Gülnar, 2014). When developing mobile applications for the Android operating system, according to the official Android 2020 website data, applications need to be tested on various devices to provide high-quality apps. Before the launch, automated tests are run on real devices that can identify layout issues, diagnose crashes, discover security vulnerabilities, and perform many other tasks. Then, custom tests are applied in Firebase Test Lab to investigate quality-related issues more thoroughly. Below are the steps that Android app developers should algorithmically follow:

* Shadows should be used to indicate which surfaces are in front of others. This process helps to create hierarchy in the design.

* Design is completed after images, colors, metrics, and key lines are animated using material design steps.

* Interactive surfaces should load when touched with the user's finger during input, and attention should be paid to the functionality of the buttons on the touched surfaces.

By following these steps, the application will be visually effective, so it will be quickly added to Google Play and the process of generating economic income will be faster compared to other applications. According to 2020 data, there are plugins and tools that a person who wants to develop Android applications needs to install. These plugins and tools are provided in Figure 3.

Figure 3. Programs and Plugins Required for Developing Android Applications

As seen in Figure 3, a developer who wants to develop Android applications needs to install Android Development Tools (ADT) plugin, The Android Software Development Kit (SDK) Tools, The Java Development Kit (JDK) Tools, Android Development Environment Tools, and the Android platform they want to develop the application for on their computer, in priority order. JAVA

Java is a development tool that provides tools for developing mobile applications on the Android platform with the Java programming language (Sonuch, Ortakci and Elen, 2013). Since the Android operating system is written in Java, it is a highly preferred language for Android

applications. One of the most important features of the Java programming language is its support for multithreading architecture (Arslan & Gulnar, 2014). This architecture controls the execution of commands in a computer program and enables optimization.

HTML5

HTML5 is a technology developed after HTML4.1 to reduce complexity in web pages and enable the use of new web elements that reduce complexity in web page code (Durgut & Chakir, 2013). HTML5 can be used to develop web applications running on mobile devices. These applications can work through interaction with a web server or solely on the device.

Information about the application development stages for Android and OS operating systems is given in Table 1.

Table 1. Comparison of Android and IOS in Terms of Application Development

FEATURE ANDROID IOS

Operating System Base Linux Linux

Operating System Open source Closed Source Code

Available Programming Languages Objective C, Swift, Html 5, Css3, JavaScript Swift and Objective C

GUI (Graphical User Interface) XML Xcode

DE (Integrated Development Environment) Eclipse 3.5 Xcode

Table 1 compares the effective aspects of mobile application development for Android and IOS operating systems. There are advantages and disadvantages to closed-source and open-source operating systems. Since IOS is a closed system, it is more secure against external attacks, but this makes external interventions more difficult. It is difficult to upload videos, mp3s, and documents to an IOS-based mobile device via Bluetooth or USB. On the other hand, the Android operating system, being open-source, is not as secure against external attacks as the IOS operating system. However, uploading mp3s, videos, and documents to a mobile device via USB and Bluetooth is not as difficult as it is with the IOS operating system. A study conducted by Benenson, Gassmann, and Reinfelder (2013) with 700 students found that users who prioritize technical specifications prefer Android phones more. The study also found that users who have antivirus software installed on their phones tend to use Android phones more. It has been observed that users who are more conscious about privacy prefer the IOS operating system. It is thought that applications containing viruses cannot pass through Apple's review process. Each application development platform has its strengths and limitations. A choice is made based on goals, budget, and available technological infrastructure. The platform that is suitable for the requirements and technological infrastructure should be preferred (Keskin & Kilin9, 2015).

MOBILE PLATFORMS

Native Mobile Platforms

A native mobile application is a mobile application written in a language specific to the device - Objective-C for IOS, Java for Android - and compiled to run only on that particular device. Since it is written for a specific platform, it can interact with and leverage operating system features and other software typically installed on that platform. Native applications have access to all

ОФ "Международный научно-исследовательский центр "Endless Light in Science"

functions of the device. Native components are shared libraries dynamically loaded at runtime (Yan & Yin, 2012). They open and close quickly, and they can work both online and offline. Examples of native applications include Facebook and Twitter.

Hybrid Mobile Platforms

In the maintenance and development stages of native applications, it is difficult for mobile developers when the code written for one mobile platform cannot be used for another platform. Hybrid solutions allow developers to create web-based mobile applications (Georgiev, Jana, & Shmatikov, 2014). Although installed in the logic of a native application, a web application is opened within it. The most significant advantage of hybrid applications is their ability to simultaneously adapt to Android and IOS operating systems. Applications can be developed for all platforms with a single codebase.

Cross Mobile Platforms

Cross-platform applications are applications that run on different mobile platforms (Perchat, Desertot, & Lecomte, 2014). As the diversity of mobile devices increases, the need for seamless mobile applications also increases. Cross-platform solutions are the most suitable solution for this diversity. Developing multiple applications for different platforms is a disadvantage for application developers in terms of resources, time, and effort, which is why cross-platform solutions have become preferred. In terms of application performance, they surpass hybrid platforms (Keskin & Kilinch, 2015).

Benefits of cross-platforms:

* Distribution and maintenance are easy because the written code can be reused.

* It saves time by eliminating the need to rewrite code for each platform.

* It is economical because it can run a single codebase on multiple platforms.

* It allows access from different platforms for businesses, resulting in a wider user base.

Responsive Mobile Platforms

Since the code structure and behavior supported by web browsers differ, a web application tested on one web browser may work smoothly in that browser but may experience distortions in appearance in different browsers (Oyucu & Polat, 2018). Responsive design approach has been developed as a solution to this problem. Responsive design ensures that a website is reshaped according to the screen resolution of any device, allowing it to be displayed adaptively on any device. Responsive Design is a flexible web design approach that adapts to different mobile devices with varying screen sizes resulting from technological advancements (£atal & Kur§ad, 2015). A website created with responsive design technique shows sensitivity to the device it is viewed on and functions as if it were designed specifically for that device.

Advantages of Responsive Platforms:

* Responsive designs rank higher in search engines due to their better user experience.

* Well-designed mobile-friendly websites generally do not require a separate mobile site, except in very exceptional cases.

* Mobile-friendly websites, i.e., responsive web designs, adapt and reshape themselves according to the dimensions of the device, ensuring that they remain responsive, which means they will have the same URL for all devices. Having a single site allows for management and update processes to be carried out through a single management panel, resulting in significant savings in time and costs.

LITERATURE

1. Belash, V.Yu. On the Use of Mobile Applications in the Educational Process / V.Yu. Belash, D.O. Lavrentiev, M.S. Denisenko // Problems of Modern Pedagogical Education. - 2022. -Issue 75. - Part 4. - pp. 51-53.

2. Lavrentiev, D.O. On Software Tools for Creating a Mobile Application (Using an Electronic Journal as an Example) / D.O. Lavrentiev, V.Yu. Belash // Diary of Science. - 2021. -No. 11 [Electronic resource]. - URL: http://www.dnevniknauki.ru/images/publications/2021/11/technics/Lavrentiev_Belash.pdf (Accessed 20.06.2022).

3. Tkachenko, A.L. Analysis and Recommendations for Choosing an Analytical Platform / A.L. Tkachenko, I.A. Lygin, V.I.Kuznetsova // Notes of a Scientist. - 2021. - No. 7-1. - pp. 51-54.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.