Android (operating system)
Android 4.4.2 home screen
|Company / developer||Google
Open Handset Alliance
|Written in||C (core), C++, Java (UI)|
|Source model||Open source and in most devices with proprietary components|
|Initial release||September 23, 2008|
|Latest release||4.4.4 KitKat / June 19, 2014|
|Latest preview||Android L developer preview / June 26, 2014|
|Available in||Multi-lingual (46 languages)|
|Package manager||Google Play, APK|
|Platforms||32-bit ARM, MIPS, x86, x86-64|
|Kernel type||Monolithic (modified Linux kernel)|
|Userland||Bionic libc, mksh shell, native core utilities with a few from NetBSD|
|Default user interface||Graphical (Multi-touch)|
|License||Apache License 2.0
Modified Linux kernel under GNU GPL v2
Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google. With a user interface based on direct manipulation, Android is designed primarily for touchscreen mobile devices such as smartphones and tablet computers, with specialized user interfaces for televisions (Android TV), cars (Android Auto), and wrist watches (Android Wear). The OS uses touch inputs that loosely correspond to real-world actions, like swiping, tapping, pinching, and reverse pinching to manipulate on-screen objects, and a virtual keyboard. Despite being primarily designed for touchscreen input, it also has been used in game consoles, digital cameras, and other electronics.
As of 2011, Android has the largest installed base of any mobile OS and as of 2013, its devices also sell more than Windows, iOS, and Mac OS devices combined. As of July 2013 the Google Play store has had over 1 million Android apps published, and over 50 billion apps downloaded. A developer survey conducted in April–May 2013 found that 71% of mobile developers develop for Android. At Google I/O 2014, the company revealed that there were over 1 billion active monthly Android users (that have been active for 30 days), up from 538 million in June 2013.
Android’s source code is released by Google under open source licenses, although most Android devices ultimately ship with a combination of open source and proprietary software. Initially developed by Android, Inc., which Google backed financially and later bought in 2005, Android was unveiled in 2007 along with the founding of the Open Handset Alliance—a consortium of hardware, software, and telecommunication companies devoted to advancing open standards for mobile devices.
Android is popular with technology companies which require a ready-made, low-cost and customizable operating system for high-tech devices. Android’s open nature has encouraged a large community of developers and enthusiasts to use the open-source code as a foundation for community-driven projects, which add new features for advanced users or bring Android to devices which were officially released running other operating systems. The operating system’s success has made it a target for patent litigation as part of the so-called “smartphone wars” between technology companies.
- 1 History
- 2 Features
- 2.1 Interface
- 2.2 Applications
- 2.3 Memory management
- 3 Hardware
- 4 Development
- 4.1 Update schedule
- 4.2 Linux kernel
- 4.3 Software stack
- 4.4 Open-source community
- 5 Security and privacy
- 6 Licensing
- 6.1 Leverage over manufacturers
- 7 Reception
- 7.1 Tablets
- 7.2 Market share
- 7.3 Platform usage
- 7.4 Application piracy
- 8 Legal issues
- 9 Use outside of smartphones and tablets
- 10 See also
- 11 References
- 12 External links
Android, Inc. was founded in Palo Alto, California in October 2003 by Andy Rubin (co-founder of Danger), Rich Miner (co-founder of Wildfire Communications, Inc.), Nick Sears (once VP at T-Mobile), and Chris White (headed design and interface development at WebTV) to develop, in Rubin’s words “smarter mobile devices that are more aware of its owner’s location and preferences”. The early intentions of the company were to develop an advanced operating system for digital cameras, when it was realized that the market for the devices was not large enough, and diverted their efforts to producing a smartphone operating system to rival those of Symbian and Windows Mobile. Despite the past accomplishments of the founders and early employees, Android Inc. operated secretly, revealing only that it was working on software for mobile phones. That same year, Rubin ran out of money. Steve Perlman, a close friend of Rubin, brought him $10,000 in cash in an envelope and refused a stake in the company.
Google acquired Android Inc. on August 17, 2005; key employees of Android Inc., including Rubin, Miner, and White, stayed at the company after the acquisition. Not much was known about Android Inc. at the time, but many assumed that Google was planning to enter the mobile phone market with this move. At Google, the team led by Rubin developed a mobile device platform powered by the Linux kernel. Google marketed the platform to handset makers and carriers on the promise of providing a flexible, upgradable system. Google had lined up a series of hardware component and software partners and signaled to carriers that it was open to various degrees of cooperation on their part.
Speculation about Google’s intention to enter the mobile communications market continued to build through December 2006. An earlier prototype codenamed “Sooner” had a closer resemblance to a BlackBerry phone, with no touchscreen, and a physical, QWERTY keyboard, but was later re-engineered to support a touchscreen, to compete with other announced devices such as the 2006 LG Prada and 2007 Apple iPhone. In September 2007, InformationWeek covered an Evalueserve study reporting that Google had filed several patent applications in the area of mobile telephony.
On November 5, 2007, the Open Handset Alliance, a consortium of technology companies including Google, device manufacturers such as HTC, Sony and Samsung, wireless carriers such as Sprint Nextel and T-Mobile, and chipset makers such as Qualcomm and Texas Instruments, unveiled itself, with a goal to develop open standards for mobile devices. That day, Android was unveiled as its first product, a mobile device platform built on the Linux kernel version 2.6.25. The first commercially available smartphone running Android was the HTC Dream, released on October 22, 2008.
In 2010, Google launched its Nexus series of devices – a line of smartphones and tablets running the Android operating system, and built by manufacturing partners. HTC collaborated with Google to release the first Nexus smartphone, the Nexus One. Google has since updated the series with newer devices, such as the Nexus 5 phone (made by LG) and the Nexus 7 tablet (made by Asus). Google releases the Nexus phones and tablets to act as their flagship Android devices, demonstrating Android’s latest software and hardware features. On March 13, 2013 Larry Page announced in a blog post that Andy Rubin had moved from the Android division to take on new projects at Google. He was replaced by Sundar Pichai, who also continues his role as the head of Google’s Chrome division, which develops Chrome OS.
Since 2008, Android has seen numerous updates which have incrementally improved the operating system, adding new features and fixing bugs in previous releases. Each major release is named in alphabetical order after a dessert or sugary treat; for example, version 1.5 Cupcake was followed by 1.6 Donut. The latest released version, 4.4.4 KitKat, appeared as a security-only update; it was released on June 19, 2014, shortly after the release of 4.4.3.
From 2010 to 2013, Hugo Barra served as product spokesperson for the Android team, representing Android at both press conferences and Google I/O, Google’s annual developer-focused conference. Barra’s product involvement included the entire Android ecosystem of software and hardware, including Honeycomb, Ice Cream Sandwich, Jelly Bean and KitKat operating system launches, the Nexus 4 and Nexus 5 smartphones, the Nexus 7 and Nexus 10 tablets, and other related products such as Google Now and Google Voice Search, Google’s speech recognition product comparable to Apple’s Siri. In 2013 Barra left the Android team for Chinese smartphone maker Xiaomi.
Android’s default user interface is based on direct manipulation, using touch inputs, that loosely correspond to real-world actions, like swiping, tapping, pinching, and reverse pinching to manipulate on-screen objects, and a virtual keyboard. The response to user input is designed to be immediate and provides a fluid touch interface, often using the vibration capabilities of the device to provide haptic feedback to the user. Internal hardware such as accelerometers, gyroscopes and proximity sensors are used by some applications to respond to additional user actions, for example adjusting the screen from portrait to landscape depending on how the device is oriented, or allowing the user to steer a vehicle in a racing game by rotating the device, simulating control of a steering wheel.
Android devices boot to the homescreen, the primary navigation and information point on the device, which is similar to the desktop found on PCs. Android homescreens are typically made up of app icons and widgets; app icons launch the associated app, whereas widgets display live, auto-updating content such as the weather forecast, the user’s email inbox, or a news ticker directly on the homescreen. A homescreen may be made up of several pages that the user can swipe back and forth between, though Android’s homescreen interface is heavily customisable, allowing the user to adjust the look and feel of the device to their tastes. Third-party apps available on Google Play and other app stores can extensively re-theme the homescreen, and even mimic the look of other operating systems, such as Windows Phone. Most manufacturers, and some wireless carriers, customise the look and feel of their Android devices to differentiate themselves from their competitors.
Present along the top of the screen is a status bar, showing information about the device and its connectivity. This status bar can be “pulled” down to reveal a notification screen where apps display important information or updates, such as a newly received email or SMS text, in a way that does not immediately interrupt or inconvenience the user. Notifications are persistent until read (by tapping, which opens the relevant app) or dismissed by sliding it off the screen. Beginning on Android 4.1, “expanded notifications” can display expanded details or additional functionality; for instance, a music player can display playback controls, and a “missed call” notification provides buttons for calling back or sending the caller an SMS message.
Android provides the ability to run applications which change the default launcher and hence the appearance and externally visible behaviour of Android. These appearance changes include a multi-page dock or no dock, and many more changes to fundamental features of the user interface.
Android has a growing selection of third party applications, which can be acquired by users either through an app store such as Google Play or the Amazon Appstore, or by downloading and installing the application’s APK file from a third-party site. Google Play Store allows users to browse, download and update applications published by Google and third-party developers, and the Play Store client application is pre-installed on devices that comply with Google’s compatibility requirements and license the Google Mobile Services software. The client application filters the list of available applications down to those compatible with the user’s device, and developers may restrict their applications to particular carriers or countries for business reasons. Purchases of unwanted applications can be refunded within 15 minutes of the time of download, and some carriers offer direct carrier billing for Google Play application purchases, where the cost of the application is added to the user’s monthly bill.
As of July 2013, there are more than one million applications available for Android in Play Store. As of May 2013, 48 billion apps have been installed from Google Play store and in July 2013, 50 billion apps were installed.
Applications (“apps”), that extend the functionality of devices, are developed primarily in the Java programming language using the Android software development kit (SDK). The SDK includes a comprehensive set of development tools, including a debugger, software libraries, a handset emulator based on QEMU, documentation, sample code, and tutorials. The officially supported integrated development environment (IDE) is Eclipse using the Android Development Tools (ADT) plugin. Other development tools are available, including a Native Development Kit for applications or extensions in C or C++, Google App Inventor, a visual environment for novice programmers, and various cross platform mobile web applications frameworks.
It was announced in January 2014 that Chrome HTML5 web applications should become available, using a compatibility layer from the open source Apache Cordova framework to allow such applications to be wrapped in a native application shell, enabling their distribution over Google Play.
Since Android devices are usually battery-powered, Android is designed to manage memory (RAM) to keep power consumption at a minimum, in contrast to desktop operating systems which generally assume they are connected to unlimited mains electricity. When an Android app is no longer in use, the system will automatically suspend it in memory – while the app is still technically “open”, suspended apps consume no resources (for example, battery power or processing power) and sit idly in the background until needed again. This has the dual benefit of increasing the general responsiveness of Android devices, since applications do not need to be closed and reopened from scratch each time, and also ensuring that background applications do not consume power needlessly.
Android manages the apps stored in memory automatically: when memory is low, the system will begin killing apps and processes that have been inactive for a while, in reverse order since they were last used (oldest first). This process is designed to be invisible to the user, such that users do not need to manage memory or the killing of apps themselves. However, confusion over Android memory management has resulted in third-party task killers becoming popular on Google Play store; these third-party task killers are generally regarded as doing more harm than good.
The main hardware platform for Android is the 32-bit ARMv7 architecture. The Android-x86 project provides support for the x86 architecture, and Google TV uses a special x86 version of Android. In 2012, Intel processors began to appear on more mainstream Android platforms, such as phones. In 2013, Freescale announced support for Android on its i.MX processor, specifically the i.MX5X and i.MX6X series.
As of November 2013, current versions of Android recommend at least 512 MB of RAM (with 340 MB as a requirement), and require a 32-bit ARMv7, MIPS or x86 architecture processor (latter two through unofficial ports), together with an OpenGL ES 2.0 compatible graphics processing unit (GPU). Android supports OpenGL ES 1.1, 2.0 and 3.0. Some applications explicitly require a certain version of the OpenGL ES, thus suitable GPU hardware is required to run such applications.
In addition to running directly on x86-based hardware, Android can also be run on x86 architecture by using an Android emulator which is part of the Android SDK, or by using BlueStacks or Andy.
Android devices incorporate many optional hardware components, including still or video cameras, GPS, orientation sensors, dedicated gaming controls, accelerometers, gyroscopes, barometers, magnetometers, proximity sensors, pressure sensors, thermometers, and touchscreens. Some hardware components are not required, but became standard in certain classes of devices, such as smartphones, and additional requirements apply if they are present. Some other hardware was initially required, but those requirements have been relaxed or eliminated altogether. For example, as Android was developed initially as a phone OS, hardware such as microphones were required, while over time the phone function became optional. Android used to require an autofocus camera, which was relaxed to a fixed-focus camera if it is even present at all, since the camera was dropped as a requirement entirely when Android started to be used on set-top boxes.
Android is developed in private by Google until the latest changes and updates are ready to be released, at which point the source code is made available publicly. This source code will only run without modification on select devices, usually the Nexus series of devices. The source code is, in turn, adapted by OEMs to run on their hardware. Android’s source code does not contain the often proprietary device drivers that are needed for certain hardware components.
The green Android logo was designed for Google in 2007 by graphic designer Irina Blok. The design team was tasked with a project to create a universally identifiable icon with the specific inclusion of a robot in the final design. After numerous design developments based on science-fiction and space movies, the team eventually sought inspiration from the human symbol on restroom doors and modified the figure into a robot shape. As Android is open-sourced, it was agreed that the logo should be likewise, and since its launch the green logo has been reinterpreted into countless variations on the original design.
Google provides major upgrades, incremental in nature, to Android every six to nine months, which most devices are capable of receiving over the air. The latest major release is Android 4.4 “KitKat”.
Compared to its chief rival mobile operating system, namely iOS, Android updates are typically slow to reach actual devices. For devices not under the Nexus brand, updates often arrive months from the time the given version is officially released. This is partly due to the extensive variation in hardware of Android devices, to which each upgrade must be specifically tailored, as the official Google source code only runs on their flagship Nexus devices. Porting Android to specific hardware is a time- and resource-consuming process for device manufacturers, who prioritize their newest devices and often leave older ones behind. Hence, older smartphones are frequently not updated if the manufacturer decides it is not worth their time, regardless of whether the phone is capable of running the update. This problem is compounded when manufacturers customize Android with their own interface and apps, which must be reapplied to each new release. Additional delays can be introduced by wireless carriers who, after receiving updates from manufacturers, further customize and brand Android to their needs and conduct extensive testing on their networks before sending the upgrade out to users.
The lack of after-sale support from manufacturers and carriers has been widely criticized by consumer groups and the technology media. Some commentators have noted that the industry has a financial incentive not to upgrade their devices, as the lack of updates for existing devices fuels the purchase of newer ones, an attitude described as “insulting”. The Guardian has complained that the method of distribution for updates is complicated only because manufacturers and carriers have designed it that way. In 2011, Google partnered with a number of industry players to announce an “Android Update Alliance”, pledging to deliver timely updates for every device for 18 months after its release; however, there has not been another official word about that alliance.
In 2012, Google began decoupling certain aspects of the operating system (particularly core applications) so they could be updated through Google Play Store, independently of Android itself. One of these components, Google Play Services, is a closed-source system-level process providing APIs for Google services, installed automatically on nearly all devices running Android version 2.2 and higher. With these changes, Google can add new operating system functionality through Play Services and application updates without having to distribute an upgrade to the operating system itself. As a result, Android 4.2 and 4.3 contained relatively fewer user-facing changes, focusing more on minor changes and platform improvements.
Android consists of a kernel based on the Linux kernel long-term support (LTS) branch. As of January 2014, current Android versions are built upon Linux kernel 3.4 or newer, but the specific kernel version number depends on the actual Android device and chipset. Android has used various kernels since its first 2.6.25.
Android’s Linux kernel has further architectural changes that are implemented by Google outside the typical Linux kernel development cycle, such as the inclusion of components like Binder, ashmem, pmem, logger, wakelocks, and different out-of-memory (OOM) handling. Certain features that Google contributed back to the Linux kernel, notably a power management feature called “wakelocks”, were rejected by mainline kernel developers partly because they felt that Google did not show any intent to maintain its own code. Google announced in April 2010 that they would hire two employees to work with the Linux kernel community, but Greg Kroah-Hartman, the current Linux kernel maintainer for the stable branch, said in December 2010 that he was concerned that Google was no longer trying to get their code changes included in mainstream Linux. Some Google Android developers hinted that “the Android team was getting fed up with the process,” because they were a small team and had more urgent work to do on Android.
In August 2011, Linus Torvalds said that “eventually Android and Linux would come back to a common kernel, but it will probably not be for four to five years”. In December 2011, Greg Kroah-Hartman announced the start of Android Mainlining Project, which aims to put some Android drivers, patches and features back into the Linux kernel, starting in Linux 3.3. Linux included the autosleep and wakelocks capabilities in the 3.5 kernel, after many previous attempts at merger. The interfaces are the same but the upstream Linux implementation allows for two different suspend modes: to memory (the traditional suspend that Android uses), and to disk (hibernate, as it is known on the desktop). Google maintains a public code repository that contains their experimental work to re-base Android off the latest stable Linux versions.
The flash storage on Android devices is split into several partitions, such as
/system for the operating system itself, and
/data for user data and application installations. In contrast to desktop Linux distributions, Android device owners are not given root access to the operating system and sensitive partitions such as /system are read-only. However, root access can be obtained by exploiting security flaws in Android, which is used frequently by the open-source community to enhance the capabilities of their devices, but also by malicious parties to install viruses and malware.
Android is a Linux distribution according to the Linux Foundation, Google’s open-source chief Chris DiBona, and several journalists. Others, such as Google engineer Patrick Brady, say that Android is not Linux in the traditional Unix-like Linux distribution sense; Android does not include the GNU C Library and some of other components typically found in Linux distributions.
|This section requires expansion. (December 2013)|
On top of the Linux kernel, there are the middleware, libraries and APIs written in C, and application software running on an application framework which includes Java-compatible libraries based on Apache Harmony. Android uses the Dalvik virtual machine with just-in-time compilation to run Dalvik “dex-code” (Dalvik Executable), which is usually translated from the Java bytecode. Android 4.4 also supports new experimental runtime virtual machine, ART, which is not enabled by default.
Android’s standard C library, Bionic, was developed by Google specifically for Android, as a derivation of the BSD’s standard C library code. Bionic has several major features specific to the Linux kernel, and its development continues independently of other Android’s source code bases. The main benefits of using Bionic instead of the GNU C Library (glibc) or uClibc are its different licensing model, smaller runtime footprint, and optimization for low-frequency CPUs.
Aiming for a more suitable licensing model, toward the end of 2012 Google switched the Bluetooth stack in Android from the GPL-licensed BlueZ to the Apache-licensed BlueDroid.
Android does not have a native X Window System by default, nor does it support the full set of standard GNU libraries. This made it difficult to port existing Linux applications or libraries to Android, until version r5 of the Android Native Development Kit brought support for applications written completely in C or C++. Libraries written in C may also be used in Java application by injection of a small Java shim and usage of the JNI.
Android has an active community of developers and enthusiasts who use the Android Open Source Project (AOSP) source code to develop and distribute their own modified versions of the operating system. These community-developed releases often bring new features and updates to devices faster than through the official manufacturer/carrier channels, albeit without as extensive testing or quality assurance; provide continued support for older devices that no longer receive official updates; or bring Android to devices that were officially released running other operating systems, such as the HP TouchPad. Community releases often come pre-rooted and contain modifications unsuitable for non-technical users, such as the ability to overclock or over/undervolt the device’s processor. CyanogenMod is the most widely used community firmware, and acts as a foundation for numerous others.
Historically, device manufacturers and mobile carriers have typically been unsupportive of third-party firmware development. Manufacturers express concern about improper functioning of devices running unofficial software and the support costs resulting from this. Moreover, modified firmwares such as CyanogenMod sometimes offer features, such as tethering, for which carriers would otherwise charge a premium. As a result, technical obstacles including locked bootloaders and restricted access to root permissions are common in many devices. However, as community-developed software has grown more popular, and following a statement by the Librarian of Congress in the United States that permits the “jailbreaking” of mobile devices, manufacturers and carriers have softened their position regarding third party development, with some, including HTC, Motorola, Samsung and Sony, providing support and encouraging development. As a result of this, over time the need to circumvent hardware restrictions to install unofficial firmware has lessened as an increasing number of devices are shipped with unlocked or unlockable bootloaders, similar to Nexus series of phones, although usually requiring that users waive their devices’ warranties to do so. However, despite manufacturer acceptance, some carriers in the US still require that phones are locked down, frustrating developers and customers.
Security and privacy
Android applications run in a sandbox, an isolated area of the system that does not have access to the rest of the system’s resources, unless access permissions are explicitly granted by the user when the application is installed. Before installing an application, Play Store displays all required permissions: a game may need to enable vibration or save data to an SD card, for example, but should not need to read SMS messages or access the phonebook. After reviewing these permissions, the user can choose to accept or refuse them, installing the application only if they accept. The sandboxing and permissions system lessens the impact of vulnerabilities and bugs in applications, but developer confusion and limited documentation has resulted in applications routinely requesting unnecessary permissions, reducing its effectiveness. Google has now pushed an update to Android Verify Apps feature, which will now run in background to detect malicious processes and crack them down.
The “App Ops” privacy and application permissions control system, used for internal development and testing by Google, was introduced in Google’s Android 4.3 release for the Nexus devices. Initially hidden, the feature was discovered publicly; it allowed users to install a management application and approve or deny permission requests individually for each of the applications installed on a device. Access to the App Ops was later restricted by Google starting with Android 4.4.2 with an explanation that the feature was accidentally enabled and not intended for end-users; for such a decision Google received criticism from the Electronic Frontier Foundation. Individual application permissions management, through the App Ops or third-party tools, is currently only posssible with root access to the device.
Research from security company Trend Micro lists premium service abuse as the most common type of Android malware, where text messages are sent from infected phones to premium-rate telephone numbers without the consent or even knowledge of the user. Other malware displays unwanted and intrusive adverts on the device, or sends personal information to unauthorised third parties. Security threats on Android are reportedly growing exponentially; however, Google engineers have argued that the malware and virus threat on Android is being exaggerated by security companies for commercial reasons, and have accused the security industry of playing on fears to sell virus protection software to users. Google maintains that dangerous malware is actually extremely rare, and a survey conducted by F-Secure showed that only 0.5% of Android malware reported had come from the Google Play store.
Google currently uses Google Bouncer malware scanner to watch over and scan the Google Play store apps. It is intended to flag up suspicious apps and warn users of any potential threat with an application before they download it. Android version 4.2 Jelly Bean was released in 2012 with enhanced security features, including a malware scanner built into the system, which works in combination with Google Play but can scan apps installed from third party sources as well, and an alert system which notifies the user when an app tries to send a premium-rate text message, blocking the message unless the user explicitly authorises it. Several security firms, such as Lookout Mobile Security, AVG Technologies, and McAfee, have released antivirus software for Android devices. This software is ineffective as sandboxing also applies to such applications, limiting their ability to scan the deeper system for threats.
Android smartphones have the ability to report the location of Wi-Fi access points, encountered as phone users move around, to build databases containing the physical locations of hundreds of millions of such access points. These databases form electronic maps to locate smartphones, allowing them to run apps like Foursquare, Google Latitude, Facebook Places, and to deliver location-based ads. Third party monitoring software such as TaintDroid, an academic research-funded project, can, in some cases, detect when personal information is being sent from applications to remote servers. In August 2013, Google released Android Device Manager (ADM), a component that allows users to remotely track, locate, and wipe their Android device through a web interface. In December 2013, Google released ADM as an Android application on the Google Play store, where it is available to devices running Android version 2.2 and higher.
The open-source nature of Android allows security contractors to take existing devices and adapt them for highly secure uses. For example Samsung has worked with General Dynamics through their Open Kernel Labs acquisition to rebuild Jelly Bean on top of their hardened microvisor for the “Knox” project.
As part of the broader 2013 mass surveillance disclosures it was revealed in September 2013 that the American and British intelligence agencies, the National Security Agency (NSA) and Government Communications Headquarters (GCHQ) respectively, have access to the user data on iPhone, BlackBerry, and Android devices. They are reportedly able to read almost all smartphone information, including SMS, location, emails, and notes. Further reports in January 2014 revealed the intelligence agencies capabilities to intercept the personal information transmitted across the internet by social networks and other popular apps such as Angry Birds, which collect personal information of their users for advertising and other commercial reasons. GCHQ has, according to The Guardian a wiki-style guide of different apps and advertising networks, and the different data that can be siphoned from each. Later that week, the Finnish Angry Birds developer Rovio announced that it was reconsidering its relationships with its advertising platforms in the light of these revelations, and called upon the wider industry to do the same.
The documents revealed a further effort by the intelligence agencies to intercept Google Maps searches and queries submitted from Android and other smartphones to collect location information in bulk. The NSA and GCHQ insist their activities are in compliance with all relevant domestic and international laws, although the Guardian stated “the latest disclosures could also add to mounting public concern about how the technology sector collects and uses information, especially for those outside the US, who enjoy fewer privacy protections than Americans.”
The source code for Android is open source; it is developed in private by Google, with the source code released publicly when a new version of Android is released. Google publishes most of the code (including network and telephony stacks) under the non-copyleft Apache License version 2.0. which allows modification and redistribution. The license does not grant rights to the “Android” trademark, so device manufacturers and wireless carriers have to license it from Google under individual contracts. Associated Linux kernel changes are released under the copyleft GNU General Public License version 2, developed by the Open Handset Alliance, with the source code publicly available at all times. Typically, Google collaborates with a hardware manufacturer to produce a flagship device (part of the Nexus series) featuring the new version of Android, then makes the source code available after that device has been released. The only Android release which was not immediately made available as source code was the tablet-only 3.0 Honeycomb release. The reason, according to Andy Rubin in an official Android blog post, was because Honeycomb was rushed for production of the Motorola Xoom, and they did not want third parties creating a “really bad user experience” by attempting to put onto smartphones a version of Android intended for tablets.
While all of Android itself is open source software, most Android devices ship with a large amount of proprietary software, such as Google Mobile Services, which includes apps such as Google Play Store, Google Search, and Google Play Services—a software layer which provides APIs that integrate with Google-provided services, among others. These apps must be licensed from Google by device makers, and can only be shipped on devices which meet its compatibility guidelines and other requirements. Custom, certified distributions of Android produced by manufacturers (such as TouchWiz and HTC Sense) may also replace certain stock Android apps with their own proprietary variants and add additional software not included in the stock Android operating system. There may also be “binary blob” drivers required for certain hardware components in the device.
Several stock apps in Android’s open source code used by previous versions (such as Search, Music, and Calendar) have also been effectively deprecated by Google, with development having shifted to newer but proprietary versions distributed and updated through Play Store, such as Google Search and Google Play Music. While these older apps remain in Android’s source code, they have no longer received any major updates. Additionally, proprietary variants of the stock Camera and Gallery apps also include certain functions (such as Photosphere panoramas and Google+ album integration) that are excluded from open source versions (however, they have yet to be completely abandoned). Similarly, the Nexus 5 uses a non-free variation of Android 4.4’s home screen that is embedded directly within the Google Search app, adding voice-activated search and the ability to access Google Now as a page on the home screen itself. Although an update for Google Search app containing the relevant components was released through Google Play for all Android devices, the new home screen required an additional stub application to function, and was not provided in Android 4.4 updates for any other devices (which still used the existing home screen from Android version 4.3). The stub application was officially released on Play Store as Google Now Launcher in February 2014, initially for Nexus and Google Play Edition devices with Android version 4.4.
Richard Stallman and the Free Software Foundation have been critical of Android and have recommended the usage of alternatives such as Replicant, because drivers and firmware vital for the proper functioning of Android devices are usually proprietary, and because Google Play can forcibly install or deinstall apps and invites non-free software.
Leverage over manufacturers
Google Mobile Services software, along with Android trademarks, can only be licensed by hardware manufacturers for devices that meet Google’s compatibility standards contained within Android Compatibility Definition Document. Thus, forks of Android that make major changes to the OS itself, such as Amazon’s Fire OS (used on the Kindle Fire line of tablets, and oriented towards Amazon services), Microsoft’s briefly supported Nokia X Software Platform (a fork used by the Nokia X family and oriented toward Microsoft services, having its support ending with Nokia X2) or other forks which exclude Google apps due to censorship issues (such as in China), do not include any of Google’s non-free components, are incompatible with apps that require them, and must ship with their own proprietary software marketplace instead of Google Play Store. In 2014, Google also began to require that all Android devices which license the Google Mobile Services software display a prominent “Powered by Android” logo on their boot screens.
Members of the Open Handset Alliance, which include the majority of Android OEMs, are also contractually forbidden from producing Android devices based on forks of the OS; in 2012, Acer Inc. was forced by Google to halt production on a device powered by Alibaba Group’s Aliyun OS with threats of removal from the OHA, as Google deemed the platform to be an incompatible version of Android. Alibaba Group defended the allegations, arguing that the OS was a distinct platform from Android (primarily using HTML5 apps), but incorporated portions of Android’s platform to allow backwards compatibility with third-party Android software. Indeed, the devices did ship with an application store which offered Android apps; however, the majority of them were pirated.
Android received a lukewarm reaction when it was unveiled in 2007. Although analysts were impressed with the respected technology companies that had partnered with Google to form the Open Handset Alliance, it was unclear whether mobile phone manufacturers would be willing to replace their existing operating systems with Android. The idea of an open-source, Linux-based development platform sparked interest, but there were additional worries about Android facing strong competition from established players in the smartphone market, such as Nokia and Microsoft, and rival Linux mobile operating systems that were in development. These established players were skeptical: Nokia was quoted as saying “we don’t see this as a threat,” and a member of Microsoft’s Windows Mobile team stated “I don’t understand the impact that they are going to have.”
Since then Android has grown to become the most widely used smartphone operating system and “one of the fastest mobile experiences available.” Reviewers have highlighted the open-source nature of the operating system as one of its defining strengths, allowing companies such as Microsoft (Nokia X family), Amazon (Kindle Fire), Barnes & Noble (Nook), Ouya, Baidu and others to fork the software and release hardware running their own customised version of Android. As a result, it has been described by technology website Ars Technica as “practically the default operating system for launching new hardware” for companies without their own mobile platforms. This openness and flexibility is also present at the level of the end user: Android allows extensive customisation of devices by their owners and apps are freely available from non-Google app stores and third party websites. These have been cited as among the main advantages of Android phones over others.
Despite Android’s popularity, including an activation rate three times that of iOS, there have been reports that Google has not been able to leverage their other products and web services successfully to turn Android into the money maker that analysts had expected. The Verge suggested that Google is losing control of Android due to the extensive customization and proliferation of non-Google apps and services—Amazon’s Kindle Fire line uses Fire OS, a heavily modified fork of Android which does not include or support any of Google’s proprietary components, and requires that users obtain software from its competing Amazon Appstore instead of Play Store. Google SVP Andy Rubin, who was replaced as head of the Android division in March 2013, has been blamed for failing to establish a lucrative partnership with cell phone makers. The chief beneficiary of Android has been Samsung, whose Galaxy brand has surpassed that of Android in terms of brand recognition since 2011. Meanwhile other Android manufacturers have struggled since 2011, such as LG, HTC, and Google’s own Motorola Mobility (whose partnership with Verizon Wireless to push the “DROID” brand has faded since 2010). In 2014, in an effort to improve prominence of the Android brand, Google began to require that devices featuring its proprietary components display an Android logo on the boot screen.
Android has suffered from “fragmentation”, a situation where the variety of Android devices, in terms of both hardware variations and differences in the software running on them, makes the task of developing applications that work consistently across the ecosystem harder than rival platforms such as iOS where hardware and software varies less. For example, according to data from OpenSignal in July 2013, there were 11,868 models of Android device, numerous different screen sizes and eight Android OS versions simultaneously in use, while the large majority of iOS users have upgraded to the latest iteration of that OS. Critics such as Apple Insider have asserted that fragmentation via hardware and software pushed Android’s growth through large volumes of low end, budget-priced devices running older versions of Android. They maintain this forces Android developers to write for the “lowest common denominator” to reach as many users as possible, who have too little incentive to make use of the latest hardware or software features only available on a smaller percentage of devices. However, OpenSignal, who develops both Android and iOS apps, concluded that although fragmentation can make development trickier, Android’s wider global reach also increases the potential reward.
Despite its success on smartphones, initially Android tablet adoption was slow. One of the main causes was the chicken or the egg situation where consumers were hesitant to buy an Android tablet due to a lack of high quality tablet apps, but developers were hesitant to spend time and resources developing tablet apps until there was a significant market for them. The content and app “ecosystem” proved more important than hardware specs as the selling point for tablets. Due to the lack of Android tablet-specific apps in 2011, early Android tablets had to make do with existing smartphone apps that were ill-suited to larger screen sizes, whereas the dominance of Apple’s iPad was reinforced by the large number of tablet-specific iOS apps.
Despite app support in its infancy, a considerable number of Android tablets (alongside those using other operating systems, such as the HP TouchPad and BlackBerry PlayBook) were rushed out to market in an attempt to capitalize on the success of the iPad. InfoWorld has suggested that some Android manufacturers initially treated their first tablets as a “Frankenphone business”, a short-term low-investment opportunity by placing a smartphone-optimized Android OS (before Android 3.0 Honeycomb for tablets was available) on a device while neglecting user interface. This approach, such as with the Dell Streak, failed to gain market traction with consumers as well as damaging the early reputation of Android tablets. Furthermore, several Android tablets such as the Motorola Xoom were priced the same or higher than the iPad, which hurt sales. An exception was the Amazon Kindle Fire, which relied upon lower pricing as well as access to Amazon’s ecosystem of apps and content.
This began to change in 2012 with the release of the affordable Nexus 7 and a push by Google for developers to write better tablet apps. According to International Data Corporation, shipments of Android-powered tablets surpassed iPad’s in Q3 2012.
Research company Canalys estimated in the second quarter of 2009 that Android had a 2.8% share of worldwide smartphone shipments. By the fourth quarter of 2010 this had grown to 33% of the market, becoming the top-selling smartphone platform, overtaking Symbian. By the third quarter of 2011 Gartner estimated that more than half (52.5%) of the smartphone sales belonged to Android. By the third quarter of 2012 Android had a 75% share of the global smartphone market according to the research firm IDC.
In July 2011, Google said that 550,000 new Android devices were being activated every day, up from 400,000 per day in May, and more than 100 million devices had been activated with 4.4% growth per week. In September 2012, 500 million devices had been activated with 1.3 million activations per day. In May 2013, at Google I/O, Sundar Pichai announced that 900 million Android devices had been activated.
Android market share varies by location. In July 2012, “mobile subscribers aged 13+” in the United States using Android were up to 52%, and rose to 90% in China. During the third quarter of 2012, Android’s worldwide smartphone shipment market share was 75%, with 750 million devices activated in total. In April 2013 Android had 1.5 million activations per day. As of May 2013, 48 billion apps have been installed from the Google Play store, and by September 2013, 1 billion Android devices have been activated.
Android has the largest installed base of any mobile OS and as of 2013, its devices also sell more than Windows, iOS and Mac OS devices combined. In the third quarter of 2013, Android’s share of the global smartphone shipment market was 81.3%, the highest ever. As of July 2013 the Google Play store has had over 1 million Android apps published, and over 50 billion apps downloaded. A developer survey conducted in April–May 2013 found that Android is used by 71% of mobile developers. The operating system’s success has made it a target for patent litigation as part of the so-called “smartphone wars” between technology companies.
Android devices account for more than half of smartphone sales in most markets, including the US. In the third quarter of 2013, Android’s share of the global smartphone shipment market—led by Samsung products—was 81.3%; During this time period over 261 million smartphones were sold globally, with around 211 million of those running Android, thereby outselling Windows, iOS and Mac OS devices combined.
The table below provides a breakdown of Android versions. This is based on devices accessing Play Store as of August 12, 2014, and therefore it excludes Android derivatives that do not access Google Play (for example, Amazon’s declining tablet market share from 14.4% of the Android-tablets in 2012 to 7.7% in 2013 (9.8% for both years combined) while it had none of the much bigger smartphone market).
|Version||Code name||Release date||API level||Distribution|
|4.4||KitKat||October 31, 2013||19||20.9%|
|4.3||Jelly Bean||July 24, 2013||18||7.9%|
|4.2.x||November 13, 2012||17||19.8%|
|4.1.x||July 9, 2012||16||26.5%|
|4.0.3–4.0.4||Ice Cream Sandwich||December 16, 2011||15||10.6%|
|2.3.3–2.3.7||Gingerbread||February 9, 2011||10||13.6%|
|2.2||Froyo||May 20, 2010||8||0.7%|
Note: The above gives an inaccurate distribution of APIs. E.g. information from the Amazon Appstore would only show a subset of the APIs/versions above – those used by Amazon’s tablets.
There has been some concern about the ease with which paid Android apps can be pirated. In a May 2012 interview with Eurogamer, the developers of Football Manager stated that the ratio of pirated players vs legitimate players was 9:1 for their game Football Manager Handheld. However, not every developer agreed that piracy rates were an issue; for example, in July 2012 the developers of the game Wind-up Knight said that piracy levels of their game were only 12%, and most of the piracy came from China, where people cannot purchase apps from Google Play.
In 2010, Google released a tool for validating authorized purchases for use within apps, but developers complained that this was insufficient and trivial to crack. Google responded that the tool, especially its initial release, was intended as a sample framework for developers to modify and build upon depending on their needs, not as a finished piracy solution. In 2012 Google released a feature in Android 4.1 that encrypted paid applications so that they would only work on the device on which they were originally installed from the Google Play Store, but this feature has been temporarily deactivated due to technical issues.
Both Android and Android phone manufacturers have been involved in numerous patent lawsuits. On August 12, 2010, Oracle sued Google over claimed infringement of copyrights and patents related to the Java programming language. Oracle originally sought damages up to $6.1 billion, but this valuation was rejected by a United States federal judge who asked Oracle to revise the estimate. In response, Google submitted multiple lines of defense, counterclaiming that Android did not infringe on Oracle’s patents or copyright, that Oracle’s patents were invalid, and several other defenses. They said that Android is based on Apache Harmony, a clean room implementation of the Java class libraries, and an independently developed virtual machine called Dalvik. In May 2012, the jury in this case found that Google did not infringe on Oracle’s patents, and the trial judge ruled that the structure of the Java APIs used by Google was not copyrightable.
In addition to lawsuits against Google directly, various proxy wars have been waged against Android indirectly by targeting manufacturers of Android devices, with the effect of discouraging manufacturers from adopting the platform by increasing the costs of bringing an Android device to market. Both Apple and Microsoft have sued several manufacturers for patent infringement, with Apple’s ongoing legal action against Samsung being a particularly high-profile case. In October 2011, Microsoft said they had signed patent license agreements with ten Android device manufacturers, whose products account for “70% in the U.S.”. and 55% of the worldwide revenue for Android devices. These include Samsung and HTC. Samsung’s patent settlement with Microsoft includes an agreement that Samsung will allocate more resources to developing and marketing phones running Microsoft’s Windows Phone operating system.
Google has publicly expressed its frustration for the current patent landscape in the United States, accusing Apple, Oracle and Microsoft of trying to take down Android through patent litigation, rather than innovating and competing with better products and services. In 2011–12, Google purchased Motorola Mobility for US$12.5 billion, which was viewed in part as a defensive measure to protect Android, since Motorola Mobility held more than 17,000 patents. In December 2011, Google bought over a thousand patents from IBM.
In 2013, Fairsearch, a lobbying organization supported by Microsoft, Oracle and others, filed a complaint regarding Android with the European Commission, alleging that its free-of-charge distribution model constituted anti-competitive predatory pricing. The Free Software Foundation Europe, whose donors include Google, disputed the Fairsearch allegations.
Use outside of smartphones and tablets
The open and customizable nature of Android allows it to be used on other electronics aside from smartphones and tablets, including laptops and netbooks, smartbooks, smart TVs (Android TV, Google TV) and cameras (E.g. Galaxy Camera). In addition, the Android operating system has seen applications on smart glasses (Google Glass), smartwatches, headphones, car CD and DVD players, mirrors, portable media players, landline and Voice over IP phones. Ouya, a video game console running Android, became one of the most successful Kickstarter campaigns, crowdfunding US$8.5m for its development, and was later followed by other Android-based consoles, such as Nvidia’s Project Shield — an Android device in a video game controller form factor.
In 2011, Google demonstrated “Android@Home”, a home automation technology which uses Android to control a range of household devices including light switches, power sockets and thermostats. Prototype light bulbs were announced that could be controlled from an Android phone or tablet, but Android head Andy Rubin was cautious to note that “turning a lightbulb on and off is nothing new”, pointing to numerous failed home automation services. Google, he said, was thinking more ambitiously and the intention was to use their position as a cloud services provider to bring Google products into customers’ homes.
Parrot unveiled an Android-based car stereo system known as Asteroid in 2011, followed by a successor, the touchscreen-based Asteroid Smart, in 2012. In 2013, Clarion released its own Android-based car stereo, the AX1. In January 2014 at Consumer Electronics Show, Google announced the formation of the Open Automotive Alliance, a group including several major automobile makers (Audi, General Motors, Hyundai, and Honda) and Nvidia, which aims to produce Android-based in car entertainment systems for automobiles, “[bringing] the best of Android into the automobile in a safe and seamless way.”
On March 18, 2014, Google announced Android Wear, an Android-based platform specifically intended for smartwatches and other wearable devices; only a developer preview was made publicly available. This was followed by the unveiling of two Android Wear–based devices, the LG G Watch and Moto 360.
On June 25, 2014, at Google I/O, it was announced Android TV, a Smart TV platform, is replacing the previously released Google TV. On June 26, 2014, Google announced Android Auto for the car.
- Android rooting
- Android version history
- Comparison of mobile operating systems
- Index of Android OS articles
- List of GPS software for mobile phones
- Replicant (operating system) – based on Android with no proprietary software components
- “Android Code Analysis”. Retrieved June 6, 2012.
- “Philosophy and Goals”. Android Open Source Project. Google. Retrieved April 21, 2012.
- “Google’s iron grip on Android: Controlling open source by any means necessary”. Ars Technica. Retrieved December 8, 2013.
- “Announcing the Android 1.0 SDK, release 1”. September 9, 2008. Retrieved September 21, 2012.
- Kellex (June 19, 2014). “Whoa: Android 4.4.4 Factory Images Posted as Build KTU84P”. Droid Life. Retrieved June 19, 2014.
- “How to Install the Android L Developer Preview on Your Nexus 5 or 7”. Lifehacker. Retrieved June 26, 2014.
- “We just played with Android’s L Developer Preview”. Engadget. Retrieved June 26, 2014.
- “MIPS gets sweet with Honeycomb”. Eetimes.com. Retrieved February 20, 2012.
- Shah, Agam (December 1, 2011). “Google’s Android 4.0 ported to x86 processors”. Computerworld. International Data Group. Retrieved February 20, 2012.