Mobile app
An application software for mobile devices or mobile operating systems is referred to as a mobile app (in German mostly in the short form App [ ɛp ], an abbreviation for the technical term application ; sometimes also the app; in English [ æp ] as short form for English application ) . Although the term app refers to any type of application software, in the German-speaking world it is often equated with application software for smartphones and tablets . In the case of mobile apps, a distinction is made between native apps that only work on one platform and platform-independent web, hybrid and cross-platform apps.
They are available for a wide variety of areas. These range from the simplest utilities and fun applications with just one function to program packages with extensive functionality (e.g. office applications, games, advice, fitness apps, to emulate older home computers and programmable calculators , to help diabetics and much more ). With the help of mobile remote apps , digital devices such as cameras, action camcorders or quadrocopter are increasingly being controlled remotely. The majority of these apps are free, a smaller part must be purchased in the respective app store , usually for small amounts .
history
Even the first mobile phones often contained small applications such as calendars, calculators or mobile phone games . These were designed by the manufacturer for the respective operating system, permanently installed and only erasable with root rights. With the appearance of Java on cell phones ( Java ME ), users were given the opportunity to download simple applications and games from their cellular network operator or from the Internet via WAP ( MIDlets ), which were often platform-independent. A hobby programming scene developed, but professional software houses also offered such applications for a fee. Applications could also be installed on various PDAs . The Palm OS PDA applications, which usually only consist of one file and can be used immediately after the transfer, can be regarded as forerunners of smartphone apps . On Psion organizers , programs could be created with the device itself.
For cell phones with their own operating system and the option of installing appropriate apps, the term smartphone became established around the year 2000 . This term was first used in the mobile sector by Ericsson for the prototype GS88. At the same time, the Communicator series from Nokia , which later ran the Symbian operating system, was widely used . The first smartphones available on the mass market in 2002 included the Siemens S55 and Nokia 7650 , on which Java programs could be manually transferred and executed. It was only with the appearance of the Apple iPhone 2007 and later the Android mobile phones and other smartphones that the possibility of installing applications on mobile devices became more common among broad sections of the population, supported by correspondingly increased marketing by the manufacturers. Most smartphones come preinstalled with some apps, such as a web browser , an e-mail program and a calendar. In June 2016, over two million apps were offered for iOS alone.
Over 90 billion apps were downloaded worldwide in 2016 (iOS App Store and Google Play Store). In Germany, sales increased by 40 percent to $ 750 million compared to the previous year. On average, an Android smartphone user spent more than 1.5 hours a day in apps. The list of the most popular apps (most downloads) in Germany was headed by WhatsApp in 2016, followed by Facebook Messenger and the Facebook app. Snapchat ranks fourth and Instagram follows in fifth. The top-selling apps were Lovoo , Spotify and Tinder , if you disregard game apps.
Native apps
Native apps are characterized by the fact that they are specially adapted to the target platform. Since a native app uses the programming interfaces (APIs) of the target platform directly, the range of applications is very high. In addition, all platform-specific hardware and software functions can be accessed, such as files , GPS , acceleration sensors , microphone and camera. However, due to the various software platforms , it is not possible to install an Android app on an iPhone or vice versa. A software company therefore has to develop the application for each end device individually. Every mobile platform has its own software development kit (SDK) and its own integrated development environment (e.g. Android Studio or Xcode ), which developers can use. The preferred programming languages for the largest systems are:
- Java and Kotlin for Google's Android
- Objective-C and Swift for Apple's iOS and iPadOS
- C # , C and C ++ for Microsoft's Windows
With native apps, different types of devices can be operated at once if they are all based on one platform. With the Universal Windows Platform it is possible to write native Windows apps for desktop PCs, laptops, tablets, smartphones and the Xbox One all at once .
Platform independent apps
The rapid development of different operating systems such as Android, Windows, iOS and mobile devices, from smartphones to tablets to notebooks and smart TVs is causing companies to rethink. According to a study by the market research institute GfK , more than 60% of adults in the USA use at least two devices a day and around 25% at least three devices. It is therefore important that the app is available on all different devices and works without any problems. These expectations have increased the need for platform-independent hybrid and cross-platform applications.
Platform-independent apps are becoming increasingly important, especially in companies that require different devices. Above all, with the emergence of the phenomenon of bring your own device (short: BYOD, in German roughly: “Bring your own device with you”), companies are faced with the task of providing in-house programs and applications for all operating systems and device types. Mobility and flexibility also play a key role. An application that runs on desktop computers should e.g. B. also work on the tablet during external customer visits or on the smartphone while on the move. It tries to develop for several platforms at the same time as simply as possible. Google ported to large parts of the source code of your inbox , using the "J2ObjC" software from Java to Objective-C. With the "Windows Bridge", Microsoft also offers the possibility of developing Windows apps with iOS APIs .
Web apps
Mobile web apps are accessed via the mobile device's web browser and do not require installation. They use web standards such as HTML5 or JavaScript so that they can be operated on any device. In contrast to mobile apps, which have to be newly implemented for each platform, an implementation of web apps can be used on many different platforms. A mobile web app ideally behaves exactly like a native app, i.e. it is not perceived by the user as a website, but instead offers a user interface that is optically and ergonomically integrated into the mobile device. Disadvantages of web apps are that they cannot access all hardware components and that the available data transmission speed plays an important role. A slow Internet connection (e.g. due to poor network reception) can lead to noticeable delays in interactivity.
When using web apps, more data usually has to be transferred than when using a native app. Thus, higher transmission fees (especially roaming fees abroad) for the resulting data traffic can represent an obstacle for many users, mobile web apps e.g. B. to use on vacation. The temporary storage of the required data in a local memory (cache) is a practicable way out to make it available also in offline operation. However, the amount of data that can be stored in the device using web storage technology is usually very limited.
In contrast to all other types of mobile apps, mobile web apps cannot be offered in app stores. For this reason, many website operators use website-in-app converters instead, which integrate the web app into a native app. However, many of these apps created with converters cannot be published in app stores either. These apps are excluded from the App Store guidelines by Apple, among others, as they do not offer any added value compared to the mobile website that can be accessed with a browser.
Hybrid apps
Hybrid apps are a special form of mobile app. They combine the advantages of native and web apps by being able to access many hardware and software components of the mobile device and at the same time use different platforms. They can run on different mobile devices (smartphone & tablet) and PCs as well as on different operating systems.
Hybrid apps combine the advantages of native apps and web applications by allowing source code to be used across platforms. The code is written in web technologies such as HTML , CSS , and JavaScript . Hybrid apps run - invisible to the user - within the native web browser of the respective platform , e.g. B. Safari or Google Chrome . Due to the framework used, all operating elements of the browser, such as the menu bar with URL or bookmarks bar, are suppressed.
Various frameworks are available for developing hybrid apps. One of the largest development platforms is Cordova from the Apache Software Foundation and the PhoneGap from Adobe based on it . Other companies such as Ansca Mobile with the Corona SDK and Drifty with Ionic offer solutions for developing hybrid apps.
The framework loads a library that establishes communication between JavaScript and the respective operating system-specific language. This allows hybrid apps to access various hardware and software components of the mobile device . Access is possible to contacts, cameras, motion sensors, GPS and files, among other things. Modern render engines increase the calculation speed of the interpretation of HTML5, CSS3 and JavaScript code. This allows the execution speed to be increased many times over. Technology such as WebGL accelerates complex 3D graphics without additional hardware extensions.
A major advantage of hybrid apps is that many platforms can be covered with one development and there is no need for more expensive parallel developments for the respective ecosystems. As a result, the development effort on the part of the software company is reduced considerably, which means that the user interface and functionality can be kept at the same level across multiple platforms. However, not all device or operating system-specific properties can be used and when implementing the hybrid app, platform-specific interaction designs and the look and feel of the respective platform can only be considered to a limited extent. In addition, greatly slowed loading times and much poorer computing power, for example with complex games, are possible because they operate with the intermediate layer of the web browser.
Cross-platform apps
A cross-platform app is, similar to a hybrid app, an application that can be run on different operating systems and end devices regardless of the platform. In contrast to the hybrid app, the user interface is usually built with the native APIs of the respective operating system and is not displayed in a web browser. In this way, up to 75% of the source code can be shared between the various platforms without any major loss in performance. The source code is mostly written in C # , C ++ or JavaScript.
Frameworks for cross-platform development are the “Xamarin Platform” from Xamarin , Appcelerators “Titanium Mobile” and React Native from Facebook . All three frameworks support the development of cross-platform apps for Android, iOS and Windows. With "Xamarin.Forms", large parts of the user interface code can also be shared between the platforms, while the cross-platform placeholder control element is converted into a native control element at runtime .
Google's Flutter SDK enables the development of cross-platform apps for iOS and Android in the Dart programming language . Flutter does not use any native controls, but draws with its own rendering engine.
However, model layer code in C ++ can also be shared between these platforms without having to use a framework.
development
When developing mobile apps, there are a number of limitations that must be observed compared to applications for desktop computers. B. the processors of smartphones are less powerful and run on battery power. There is also a large number of different screen sizes, hardware configurations and software versions. Mobile apps are mostly developed with the help of an integrated development environment and the software development kit of the corresponding platform. The software can be tested with an emulator before trying it on real devices.
Many developers now rely on speech dialog systems , as opposed to "normal" mobile user interfaces . These can either be in the form of speech recognition, e.g. B. with Siri , or in the form of chatbots , e.g. B. in Skype or Facebook Messenger , implemented. This form of interactions with applications is growing as many users are overwhelmed by the multitude of apps. Microsoft's CEO Satya Nadella sees chatbots as "the next big thing", which will bring about as profound changes as the iPhone for touchscreens or the use of graphical user interfaces before .
The employment area for software developers of apps for mobile platforms continues to grow, until 2012, according to a report by "TechNet", 466,000 new jobs were created in the US alone. In Europe, according to a report by the Progressive Policy Institute, by the beginning of 2016 there should be 1.64 million jobs that depend on mobile apps. The manufacturers of mobile operating systems are trying various methods to win over software developers for their platform. For example, Apple plans to open an “iOS App Development Center” in Naples , Italy in October 2016 , where developers will be trained. Google wants to train two million developers in India and offers various courses in the field of Android development through Udacity .
distribution
Apps can usually be obtained from an internet sales platform integrated into the operating system and installed directly on the device. As a result of the great market success of smartphones and tablets, practically all manufacturers of mobile operating systems have developed their own platforms to market the apps developed for their respective devices. Customers can download the apps there for free or for a fee. The sales platform with the largest number of programs is the Google Play Store for Android devices, followed by the App Store for iOS. There are also separate app stores for devices with other operating systems. Most of the income goes to the developers; the operator of the sales portal also shares in the profits. Apple, Google and Microsoft keep 30 percent of the purchase price of an app or an in-app purchase as a commission . As a rule, apps are technically checked by the portal operator, and sometimes the content is also checked.
There are basically different ways in which an app can access a device: directly via the mobile Internet connection or WLAN of the device or with the help of a PC , with which apps can be installed using the appropriate software (such as iTunes ) when the mobile device is connected. Some app platforms also allow the app to be purchased on the PC and automatically installed on all synchronized devices, with the app being downloaded from the devices automatically. If the manufacturers keep their mobile operating system accessible to external sources for installing application software, there are also other, often cross-platform offers from shops of various providers on the Internet, as well as the possibility of direct purchase on the websites of the app developers .
privacy
Many mobile apps are criticized by consumer advocates because they send data without the knowledge or consent of the user that is not required for the app to function or that is unencrypted or not anonymized and can therefore easily be spied on. The operators of platforms on the Internet, such as social networks or shopping portals , are enabled with apps to collect data and use it for targeted and efficient advertising purposes or forward it to third parties. It is particularly critical when, for example, sensitive personal data such as account data or credit card information can be spied on in shopping apps . Many apps also collect data via automated analytics services such as Google Analytics or Twitter's Fabric.
Like all other programs, native apps can contain security vulnerabilities . It is therefore essential to ensure that the end device is updated and that the software is maintained by the provider. Native apps run as an independent program on the respective device and thus have extended access to resources. This problem is countered by the use of a sandbox , which restricts access to the program interfaces provided by the manufacturer and can therefore be regulated.
Use in companies
In companies, mobile apps are used in various areas. Applications that are used in the company by employees on PCs, e.g. B. Enterprise Resource Planning (ERP), Customer Relationship Management (CRM) or Microsoft Outlook , also available on mobile devices, so that you can work from anywhere. Another area of application is use in marketing (e.g. messenger marketing ). Apps are used there, for example, to support the sales force, for example by providing internal product catalogs or spare parts lists with direct online ordering options, also linked to prior inquiries about stock levels and / or forecasts of the current delivery time of a product.
safety
Mobile apps often represent a high security risk for companies in the bring-your-own-device context, as they sometimes transfer sensitive data unprotected without the knowledge and consent of the user. This not only means the loss of confidential information, it also makes companies vulnerable to attack and blackmail. In corporate use, so-called mobile device management systems ensure that the desired apps can be distributed centrally to the devices, in some cases through their own reference portal. In the case of purely company smartphones or tablets, the installation of other apps by the user is often technically prevented for security reasons, since otherwise a possible point of attack for industrial espionage and other risks from malware would be created. For a clean separation of apps on company mobile devices with some private use, so-called personas can be used to separate the respective data and applications.
If internal IT and security guidelines are not dispensed with in the company , the conventional sales channel via an app store is generally out of the question, as the company's mobile apps - often developed in-house - would also be publicly accessible. Instead, such apps are made available to the user centrally by a company's system administrator via mobile device management solutions or are also automatically installed on the smartphone.
App wrapping
One way to secure company data is app wrapping. With app wrapping, company-relevant applications are encrypted in another app. This ensures that only safe and approved applications are used in the company. However, this also has disadvantages, it can lead to copyright infringements or even loss of warranty rights.
Native app management
Alternatively, there is the option of using mobile device management to offer native apps securely without the native user experience suffering. This function has been offered by Apple since iOS 7, Google with “Android for Work” and Samsung with Knox .
literature
- Holger Hinzberg: Programming iPhone apps - practical introduction . 1st edition. mitp-Verlag, Frechen 2013, ISBN 978-3-8266-9287-1 .
- Gerrit Heinemann (Ed.): No-Line-Handel. Highest level of evolution in multi-channeling. Springer Fachmedien, Wiesbaden 2012, ISBN 978-3-658-00850-5 .
Web links
- January 25, 2020, Katie Jones, visualcapitalist.com: Ranked: The World's Most Downloaded Apps ("Ranking of the world's most downloaded apps")
Individual evidence
- ↑ App. Duden , accessed on July 29, 2016 .
- ↑ Average price for apps by continent in 2010
- ↑ Google Ngram Viewer. Retrieved September 10, 2017 .
- ↑ Doug Gross: Apple trademarks 'There's an app for that'. CNN , October 12, 2010, accessed July 29, 2016 .
- ↑ Apple's App Store now has over 2 million apps theverge.com, June 13, 2016
- ↑ News These are the most successful apps in Germany. t3n.de, January 18, 2017, accessed on February 22, 2017 .
- ↑ Microsoft to unify PC and Xbox One platforms, ending fixed console hardware
- ↑ GfK SE: App. Accessed on July 21, 2014.
- ↑ Daniel Stenger: Viral brand communication: Attitude and behavioral effects of viral videos Fig. 2, p. 5.
- ↑ Garrick Toubassi: Official Gmail Blog: Going under the hood of Inbox. In: gmail.googleblog.com. November 20, 2014, accessed July 29, 2016 .
- ↑ Windows Bridge for iOS. In: developer.microsoft.com. Retrieved July 29, 2016 .
- ↑ Limitation of web storage (English) .
- ↑ Best website to app converter. Retrieved July 28, 2020 .
- ↑ App Store Review Guidelines - Apple Developer. Retrieved July 28, 2020 .
- ↑ Customer experience for mobile is more important to your business than you might think.
- ↑ Cross-Platform Mobile Development in Visual Studio
- ↑ Cross-Platform: Write Cross-Platform Hybrid Apps in Visual Studio with Apache Cordova
- ↑ Apache Cordova
- ↑ From Native To Hybrid App Development And Back
- ↑ Choosing the right mobile app for your project: Native vs cross-platform vs hybrid
- ↑ Deliver native Android, iOS, and Windows apps, using existing skills, teams, and code.
- ↑ Xamarin.Forms
- ↑ FAQ. Accessed October 1, 2017 .
- ↑ How Dropbox Uses C ++ for Cross-Platform iOS and Android Development
- ↑ Tim Tuttle: The Future of Voice: What's Next After Siri, Alexa and Ok Google. In: recode.net. October 27, 2015, accessed on July 29, 2016 .
- ↑ Nicole Lee: Chatting with Skype bots feels like talking to a search engine. In: engadget.com. March 30, 2016, accessed July 29, 2016 .
- ↑ Josh Constine: Facebook launches Messenger platform with chatbots. TechCrunch, April 12, 2016, accessed July 29, 2016 .
- ↑ Ben Schippers: App Fatigue. TechCrunch, February 3, 2016, accessed July 29, 2016 .
- ↑ Matt Weinberger: Satya Nadella says Microsoft's next big thing will have 'as profound an impact' as touchscreens and the web. In: businessinsider.de. March 30, 2016, accessed July 29, 2016 .
- ↑ Ryan Kim: App Economy has created almost half a million jobs. In: gigaom.com. February 7, 2012, accessed July 29, 2016 .
- ↑ David Bolton: The Apps Economy Has Created 1.64 Million Jobs In Europe. In: arc.applause.com. January 27, 2016, accessed July 29, 2016 .
- ↑ Apple Opening Europe's First iOS App Development Center in Italy. Apple, January 21, 2016, accessed July 29, 2016 .
- ↑ Mike Wuerthele: Apple to open iOS App Development Center in Italy this October. AppleInsider, July 8, 2016, accessed July 29, 2016 .
- ^ John Ribeiro: Google aims to train 2 million app developers in India. In: pcworld.com. July 11, 2016, accessed July 29, 2016 .
- ↑ Lucia Maffei: Google and Udacity launch a new Android programming course for beginners. TechCrunch, June 22, 2016, accessed July 29, 2016 .
- ↑ Jens Minor: 800,000 apps: Google Play overtakes Apple's App Store - GWB. In: googlewatchblog.de. January 11, 2013, accessed December 16, 2019 .
- ↑ Reinstall apps & games. Retrieved January 20, 2015
- ↑ Data protection in apps: which apps spy on your data , test.de , May 31, 2012, accessed online on November 16, 2012
- ↑ Shopping apps: Only two are safe and "good" , press release from Stiftung Warentest from October 25, 2012, accessed online on November 16, 2012
- ↑ Stiftung Warentest: Data protection for apps - which apps spy on your data. Stiftung Warentest , May 31, 2012, accessed on July 29, 2016 .
- ↑ Computers and Communication - “Apps eat up data” , DRadio from August 4, 2012
- ↑ "Data protection for apps - personal data transmitted unencrypted" , Stiftung Warentest from May 24, 2012
- ↑ Sebastian Wolters, Application Management, Protection against Espionage and Data Abuse . Tecchannel IT im Mittelstand, October 21, 2014. Accessed February 11, 2015
- ↑ This is how a Persona mobile app works , accessed on December 6, 2012
- ↑ Offer apps in companies safely and without administrative bureaucracy ZDNet, August 27, 2012
- ↑ Apps & Mobile Services - Tips for companies. (PDF) Federal Association for Information Technology, Telecommunications and New Media , 2014, p. 28 , archived from the original on March 8, 2014 ; accessed on February 11, 2015 .
- ↑ Peter Marwan, Under the microscope: The Business Features of iOS7 . ZDNet, July 24, 2013. Accessed February 11, 2015
- ↑ Bernd Reder, Enterprise Mobility Management in Companies . com! professional, February 5, 2015. Accessed February 11, 2015
- ↑ Mobile Device Management companies get more app control on iOS 7
- ↑ Google is targeting companies with “Android for Work”