android case study.pdf
DESCRIPTION
Android Case Study IDS businesss world google current times tech technology news today apple case study IDS 331 managment Information desicion systems Android Case Study IDS businesss world google current times tech technology news today apple case study IDS 331 managment Information desicion systems Android Case Study IDS businesss world google current times tech technology news today apple case study IDS 331 managment Information desicion systems Android Case Study IDS businesss world google current times tech technology news today apple case study IDS 331 managment Information desicion systemsTRANSCRIPT
1
Company /developer Google
Programmed in C, C++, Java[1]
OS family Unix-like, Linux
Initial release September 23, 2008
Latest stable release 4.1.1 "Jelly Bean"
Package manager Google Play, APK
Supported platforms ARM, MIPS,[6] x86[7]
Official website www.android.com
Android, Inc. was founded in Palo Alto, California in October 2003 by Andy Rubin (co-founder of Danger),[20] Rich
Miner (co-founder of Wildfire Communications, Inc.),[21] Nick Sears[22] (once VP at T-Mobile),[23] and Chris White (headed
design and interface development at WebTV)[9] to develop, in Rubin's words "...smarter mobile devices that are more
aware of its owner's location and preferences."[9] Despite the obvious past accomplishments of the founders and early
employees, Android Inc. operated secretly, revealing only that it was working on software for mobile phones.[9] 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.[24]
Google acquired Android Inc. on August 17, 2005, making it a wholly owned subsidiary of Google. Key employees of
Android Inc., including Rubin, Miner and White, stayed at the company after the acquisition.[9] 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.[9] 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
2
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.[25][26][27]
Speculation about Google's intention to enter the mobile communications market continued to build through December
2006.[28] Reports from the BBC and The Wall Street Journal noted that Google wanted its search and applications on
mobile phones and it was working hard to deliver that. Print and online media outlets soon reported rumors that Google
was developing a Google-branded handset. Some speculated that as Google was defining technical specifications, it was
showing prototypes to cell phone manufacturers and network operators. In September 2007, InformationWeek covered
an Evalueserve study reporting that Google had filed several patent applications in the area of mobile telephony.[29][30]
On November 5, 2007, the Open Handset Alliance, a consortium of technology companies including Google, device
manufacturers such as HTC 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.[10] That day, Android was unveiled as its first product, a mobile device platform built on the Linux kernel version
2.6.[10] The first commercially available phone to run Android was the HTC Dream, released on October 22, 2008.[31] In
early 2010, Google launched the Google Nexus series - a line of consumer devices implementing the Android operating
system and built by an original equipment manufacturer (OEM) partner. Google collaborated with HTC to release its first
Nexus phone[32], the Nexus One. This was followed later in 2010 with the Samsung-madeNexus S and in 2011 with
the Galaxy Nexus. In 2012, Nexus 7 - the first Nexus tablet, was released in collaboration with Asus.
The Android “Product”
Android is a Linux-based operating system designed primarily for touchscreen mobile devices such
as smartphones and tablet computers, developed by Google in conjunction with the Open Handset Alliance.[2] Initially
developed by Android Inc, whom Google financially backed and later purchased in 2005,[9] Android was unveiled in 2007
along with the founding of the Open Handset Alliance, a consortium of 86 hardware, software,
and telecommunication companies devoted to advancing open standards for mobile devices.[10]
Google releases the Android code as open source, under the Apache License.[11] The Android Open Source
Project (AOSP), lead by Google, is tasked with the maintenance and further development of Android.[12] Additionally,
Android has a large community of developers writing applications ("apps") that extend the functionality of devices, written
primarily in a customized version of Java.[13] They are available for download through Google Play or third-party sites. In
September 2012, there were more than 675,000 apps available for Android, and the estimated number of applications
downloaded from Google Play was 25 billion.[14]
The first Android-powered phone was sold in October 2008,[15] and by the end of 2010 Android had become the world's
leading smartphone platform.[16] It had a worldwide smartphone market share of 68% at the second quarter of 2012,[17] and
as of Q3 2012, there were 500 million devices activated and 1.3 million activations per day.[18][19]
3
While Android is designed primarily for smartphones and tablets, the open and customizable nature of the operating
system allows it to be used on other electronics, including laptopsand netbooks, smartbooks,[33] ebook
readers,[34] and smart TVs (Google TV). Further, the OS has seen niche applications
on wristwatches,[35] headphones,[36] car CD and DVD players,[37] smart glasses (Project Glass), refrigerators, vehicle
satnav systems, home automation systems, games consoles, mirrors,[38] cameras,[39][40] portable media
players[41]landlines,[42] and treadmills.[43]
The Android logotype was designed along with the Droid font family by Ascender Corporation,[44] the robot icon was
designed by Irina Blok.[45] Android Green is the color of the Android Robot that represents the Android operating system.
The print color is PMS 376C and the RGB color value in hexadecimal is #A4C639, as specified by the Android Brand
Guidelines.[46]The custom typeface of Android is called Norad (cf. NORAD). It is only used in the text logo.[46]
Interface
Figure 1: HTC Evo with Android
Android's user interface is based on direct manipulation,[47] using touch inputs that loosely correspond to real-world
actions, like swiping, tapping, pinching and reverse pinching to manipulate on-screen objects.[47] The response to user
input is designed to be immediate and provides a fluid touch interface. 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.[48]
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.[49] A homescreen may be made up of several pages that the user can swipe
back and forth between.
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 doesn't immediately interrupt or inconvenience the user.[50] In early
4
versions of Android these notifications could be tapped to open the relevant app, but recent updates have provided
enhanced functionality, such as the ability to call a number back directly from the missed call notification without having to
open the dialer app first.[51] Notifications are persistent until read or dismissed by the user.
Applications
Applications are usually developed in the Java language using the Android Software Development Kit, but 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.
Applications can be acquired by end-users either through a store such as Google Play or the Amazon Appstore, or by
downloading and installing the application's APK file from a third-party site.[52]
Google Play
Google Play is an online digital distribution service for Android devices. The Play Store application allows users to browse
and download apps published by third-party developers, hosted on Google Play, and is pre-installed on most devices. As
of June 2012, there were more than 600,000 apps available for Android, and the estimated number of applications
downloaded from the Play Store exceeded 20 billion.[53] The operating system itself is installed on 400 million total
devices.[54]
The Play Store is available on devices that comply with Google's compatibility requirements.[55] The app filters the list of
available applications to those that are compatible with the user's device, and developers may restrict their applications to
particular carriers or countries for business reasons.[56]
Google offers many free applications in the Play Store including Google Voice, Google Goggles, Gesture Search, Google
Translate, Google Shopper, Listen and My Tracks. In August 2010, Google launched "Voice Actions for Android",[57] which
allows users to search, write messages, and initiate calls by voice.
Security and privacy
Android applications run in a sandbox, an isolated area of the operating system that does not have access to the rest of
the system's resources, unless access permissions are granted by the user when the application is installed. Before
installing an application, the Play Store displays all required permissions. A game may need to enable vibration, for
example, but should not need to read messages or access the phonebook. After reviewing these permissions, the user
can decide whether to install the application.[59] The sandboxing and permissions system weakens the impact of
5
vulnerabilities and bugs in applications, but developer confusion and limited documentation has resulted in applications
routinely requesting unnecessary permissions, reducing its effectiveness.[60] The complexity of inter-application
communication implies Android may have opportunities to run unauthorized code.[61]
Several security firms have released antivirus software for Android devices, in particular, Lookout Mobile Security,[62] AVG
Technologies,[63] Avast!,[64]F-Secure,[65] Kaspersky,[66] McAfee[67] and Symantec.[68] This software is ineffective as
sandboxing also applies to such applications, limiting their ability to scan the deeper system for threats.[69]
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, Latitude, Places, and
to deliver location-based ads.[70]
Third party monitoring software such as TaintDroid,[71] an academic research-funded project, can, in some cases, detect
when personal information is being sent from applications to remote servers.[72]
In March 2012, it was revealed that Android Apps can copy photos without explicit user permission,[73] Google responded
they "originally designed the Android photos file system similar to those of other computing platforms like Windows and
Mac OS. [...] we're taking another look at this and considering adding a permission for apps to access images. We've
always had policies in place to remove any apps [on Google Play] that improperly access your data."[74]
Architecture
Linux
Android consists of a kernel based on the Linux kernel 2.6 and Linux Kernel 3.x (Android 4.0 onwards),
with middleware, libraries and APIswritten 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 Java bytecode.[75] The main
hardware platform for Android is the ARM architecture. There is support for x86 from the Android x86 project,[7] and
Google TV uses a special x86 version of Android.
Android's linux kernel has further architecture changes by Google outside the typical Linux kernel development
cycle.[76] Android does not have a native X Window System by default nor does it support the full set of
standard GNU libraries, and this makes it difficult to port existing Linux applications or libraries to Android.[77] But the
support of simple C and SDL applications is possible by injection of a small Java shimand usage of the JNI[78] like e.g. in
the Jagged Alliance 2 port for Android.[79]
6
Figure 2: Linux and Android Architecture
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 kernel maintainers felt that Google did not show any intent to
maintain their own code.[80][81][82]Even though Google announced in April 2010 that they would hire two employees to work
with the Linux kernel community,[83] 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.[81] 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.[84]
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 app installations.[89] In contrast to desktop Linux distributions, Android device owners are not
given root access to the operating system for security reasons, and sensitive partitions such as /system are read-only.
However, root access on the device 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.[90]
Update schedule
Google provides major updates (typically incremental in nature) to Android every six to nine months, which most devices
are capable of receiving over the air.[91] The latest major update is Android 4.1 "Jelly Bean".
7
Figure 3: Market Share of Flavors of Android
Compared to rival mobile operating systems, namely Apple’s iOS, Android updates are typically very slow in reaching
devices, often taking several months from the official Google release date to actually being distributed to devices.[92] This
is caused partly due to the extensive variation in hardware of Android devices, with each update requiring tailoring to the
specific hardware, as the official Google source code only runs on their flagship Nexus phone. 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.[92] Hence, older smartphones are frequently not updated if the manufacturer decides it is
not worth their time, regardless if 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. Some
commentators have noted that manufacturers have a financial incentive not to update their devices, as lack of updates for
existing devices fuels the purchase of newer ones.[93] Further delays can be introduced by wireless carriers who, after
receiving updates from manufacturers, customize and brand Android to their needs and conduct extensive testing on their
networks before sending the update out to users.[92]
In 2011, Google partnered with a number of manufacturers and carriers to announce an "Android Update Alliance",
pledging to deliver timely updates for every device for 18 months after its release.[94] As of 2012, this alliance has never
been mentioned since.[92]
Licensing
The source code for Android is available under free and open source software licenses. Google publishes most of the
code (including network and telephony stacks)[95] under theApache License version 2.0,[8][96][97] and the rest, Linux kernel
changes, under the GNU General Public License version 2.
The Open Handset Alliance develops the changes to the Linux kernel, in public, with source code publicly available at all
times. The rest of Android is developed in private, with source code released publicly when a new version is released.
Typically Google collaborates with a hardware manufacturer to produce a flagship device (part of the Google
Nexus series) featuring the new version of Android, then makes the source code available after that device has been
released.[98]
8
In early 2011, Google chose to temporarily withhold the Android source code to the tablet-only 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,[99] 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.[100] The source code was once again made available in November
2011 with the release of Android 4.0.[101]
Market Share
Research company Canalys estimated in Q2 2009 that Android had a 2.8% share of
worldwide smartphone shipments.[104] By Q4 2010 this had grown to 33% of the market, becoming the top-selling
smartphone platform. This estimate includes the Tapas and OMS variants of Android.[16] By Q3 2011 Gartner estimates
more than half (52.5%) of the smartphone market belongs to Android.[105] By Q2 2012 according to the research firm IDC,
Android has a 68% share of the global smartphone market.[106]
In February 2010 ComScore said the Android platform had 9.0% of the U.S. smartphone market, as measured by current
mobile subscribers. This figure was up from an earlier estimate of 5.2% in November 2009.[107] By the end of Q3 2010
Android's U.S. market share had grown to 21.4%.[108]
In May 2010, Android's first quarter U.S. sales surpassed that of the rival iPhone platform. According to a report by the
NPD group, Android achieved 25% smartphone sales in the US market, up 8% from the December quarter. In the second
quarter, Apple's iOS was up by 11%, indicating that Android is taking market share mainly from RIM, and still has to
compete with heavy consumer demand for new competitor offerings.[109] Furthermore, analysts pointed to advantages that
Android had as a multi-channel, multi-carrier OS.[110] In Q4 2010 Android had 59% of the total installed user base of
Apple's iOS in the U.S. and 46% of the total installed user base of iOS in Europe.[111][112]
As of June 2011, Google said that 550,000 new Android devices were being activated every day[113] — up from 400,000
per day a month earlier — and more than 100 million devices had been activated.[114] Android hit 300,000 activations per
day back in December 2010. By July 14, 2011, 550,000 Android devices were being activated by Google each day, with
4.4% growth per week.[115] On August 1, 2011, Canalys estimated that Android had about 48% of the smartphone market
share.[116] On October 13, 2011, Google announced that there were 190 million Android devices in the market.[117] As of
November 16, 2011, during the Google Music announcement "These Go to Eleven", 200 million Android devices had been
activated.[118] Based on this number, with 1.9% of Android devices being tablets, approximately 3.8 million Android
Honeycomb Tablets have been sold.[119] On February 27, 2012, Andy Rubin announced that Google was activating over
850,000 Android smartphones and tablets daily.
In December 2011 it was announced the Pentagon has officially approved Android for use by its personnel.[120][121][122]
There has been some concern about the ease at which paid Android apps can be pirated - i.e. downloaded for free
without the developer's permission.[123] Unlike the app store on iOSdevices, which is the only place where iOS apps may
9
be downloaded and installed from, Android apps can be downloaded and installed from anywhere, which makes it trivial to
install unauthorized copies of apps from file sharing networks. In an 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.[124] In 2010, Google released a tool for validating authorised 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
security solution.[125] Piracy on Android remains an ongoing concern.
Open source community
Android has an active community of developers and enthusiasts who use the Android source code to develop and
distribute their own modified versions of the operating system.[127]These community-developed releases, the most widely
used of which being CyanogenMod,[128] often bring new features and updates to devices faster than through the official
manufacturer/carrier channels, albeit without as extensive testing or quality assurance.[129] 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.[130]
Historically, the early responses of tablet and smartphone manufacturers and mobile carriers were typically unsupportive
of third-party firmware development. Manufacturers expressed concern about improper functioning of devices running
unofficial software and the support costs resulting from this.[131] Moreover, modified firmwares such as CyanogenMod
sometimes offer features for which carriers would otherwise charge a premium (e.g., tethering). As a result, technical
obstacles including locked bootloaders and restricted access to root permissions were 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,[132] manufacturers and carriers have
softened their position regarding third party development, with some,
including HTC,[131]Motorola,[133] Samsung[134][135] and Sony Ericsson,[136] 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 the Nexus series of phones,
although usually requiring that users waive their devices' warranties to do so.[131]
Intellectual Property
Both Android and Android phone manufacturers have been the target of numerous patent lawsuits. On August 12,
2010, Oracle sued Google over claimed infringement of copyrights and patents related to the Java programming
language.[137] Oracle originally sought damages up to $6.1 billion,[138] but this valuation was rejected by a federal judge
who asked Oracle to revise the estimate.[139] In response, Google submitted multiple lines of defense, counterclaiming that
10
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.[140] 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.[141][142]
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.[143] 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 55% of the worldwide revenue for Android devices.[144] These include Samsung and HTC.[145]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.[143]
Google has publicly expressed its dislike 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.[146] In 2011-2, 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.[147] In December 2011
Google bought over a thousand patents from IBM.[148]
Questions
1. Why did Google enter the mobile operating system (OS) offering (free) open source software, without trying to
control the hardware that it runs on (in contrast to Apple, which insists on controlling both software OS and
hardware)?
2. Why base Android on Linux? What are the benefits? Potential problems? What alternatives might Google
have taken to developing a mobile OS?
3. Should Google attempt to control modifications to Android such as done by Amazon or CyanogenMod? Why or
why not?
4. Should Google make their own hardware? What problems might they incur if they enter both the hardware and
software markets (in fact they have already)? How should they acquire the capabilities (competences + assets)
to develop hardware?
5. Google has accused Apple, Oracle and Microsoft of trying to take down Android through patent litigation, rather
than innovating and competing with better products and services. Does Google have a point? Who is right or
wrong? Why?
6. Google has said that mobile platforms (such as Android devices) are the future of e-Marketing. Why? What do
mobile platforms provide that is lacking in the desktop or laptop PC? Predict future developments in mobile
platforms? What role will Android play in these future platforms?