0% found this document useful (0 votes)
19 views2 pages

Introduction to Android Development

This document provides an overview of the Android operating system and its history. It discusses that Android is an open source, mobile-specific operating system originally developed in 2003 and later acquired by Google in 2005. It then details some of the major milestones in Android's development, including the first Android device release in 2008, different versions of the OS over time, and how Android continues to expand into new areas like wearables and virtual reality. In closing, it notes that Android is incredibly popular today but that platform fragmentation poses challenges for developers needing to support a wide range of device versions.

Uploaded by

Sujan Neupane
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views2 pages

Introduction to Android Development

This document provides an overview of the Android operating system and its history. It discusses that Android is an open source, mobile-specific operating system originally developed in 2003 and later acquired by Google in 2005. It then details some of the major milestones in Android's development, including the first Android device release in 2008, different versions of the OS over time, and how Android continues to expand into new areas like wearables and virtual reality. In closing, it notes that Android is incredibly popular today but that platform fragmentation poses challenges for developers needing to support a wide range of device versions.

Uploaded by

Sujan Neupane
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd

Lecture 1 Introduction

This course focuses on Android Development. But what is Android?

Android is an operating system. That is, it’s software that connects hardware to
software and provides general services. But more than that, it’s a mobile specific
operating system: an OS designed to work on mobile (read: handheld, wearable,
carry-able) devices.

Note that the term “Android” also is used to refer to the “platform” (e.g., devices
that use the OS) as well as the ecosystem that surrounds it. This includes the
device manufacturers who use the platform, and the applications that can be built
and run on this platform. So “Android Development” technically means developing
applications that run on the specific OS, it also gets generalized to refer to
developing any kind of software that interacts with the platform.
1.1 Android History
If you’re going to develop systems for Android, it’s good to have some familiarity
with the platform and its history, if only to give you perspective on how and why
the framework is designed the way it is.

2003: The platform was originally founded by a start-up “Android Inc.” which aimed
to build a mobile OS operating system (similar to what Nokia’s Symbian was doing at
the time)

2005: Android was acquired by Google, who was looking to get into mobile

2007: Google announces the Open Handset Alliance, a group of tech companies working
together to develop “open standards” for mobile platforms. Members included phone
manufacturers like HTC, Samsung, and Sony; mobile carriers like T-Mobile, Sprint,
and NTT DoCoMo; hardware manufacturers like Broadcom and Nvidia; and others. The
Open Handset Alliance now (2017) includes 86 companies.

Note this is the same year the first iPhone came out!
2008: First Android device is released: the HTC Dream (a.k.a. T-Mobile G1)

Specs: 528Mhz ARM chip; 256MB memory; 320x480 resolution capacitive touch; slide-
out keyboard! Author’s opinion: a fun little device.

2010: First Nexus device is released: the Nexus One. These are Google-developed
“flagship” devices, intended to show off the capabilities of the platform.

Specs: 1Ghz Scorpion; 512MB memory; .37" at 480x800 AMOLED capacitive touch.

For comparison, the iPhone 7 Plus (2016) has: 2.34Ghz dual core A10 64bit Fusion;
3GB RAM; 5.5" at 1920x1080 display.
As of 2016, this program has been superceded by the Pixel range of devices.

2014: Android Wear, a version of Android for wearable devices (watches) is


announced.

2016: Daydream, a virtual reality (VR) platform for Android is announced

In short, Google keeps pushing the platform wider so it includes more and more
capabilities.

Today, Android is incredibly popular (to put it mildly). Android is incredibly


popular! (see e.g., here, here, and here)

In any of these analyses there are some questions about what exactly is counted…
but what we care about is that there are a lot of Android devices out there! And
more than that: there are a lot of different devices!
1.1.1 Android Versions
Android has gone through a large number of “versions” since it’s release:

Date Version Nickname API Level


Sep 2008 1.0 Android 1
Apr 2009 1.5 Cupcake 3
Sep 2009 1.6 Donut 4
Oct 2009 2.0 Eclair 5
May 2010 2.2 Froyo 8
Dec 2010 2.3 Gingerbread 9
Feb 2011 3.0 Honeycomb 11
Oct 2011 4.0 Ice Cream Sandwich 14
July 2012 4.1 Jelly Bean 16
Oct 2013 4.4 KitKat 19
Nov 2014 5.0 Lollipop 21
Oct 2015 6.0 Marshmallow 23
Aug 2016 7.0 Nougat 24
Mar 2017 O preview Android O Developer Preview
Each different “version” is nicknamed after a dessert, in alphabetica order. But as
developers, what we care about is the API Level, which indicates what different
programming interfaces (classes and methods) are available to use.

You can check out an interactive version of the history through Marshmallow at
[Link]
For current usage breakdown, see [Link]
Additionally, Android is an “open source” project released through the “Android
Open Source Project”, or ASOP. You can find the latest version of the operating
system code at [Link] it is very worthwhile to actually dig
around in the source code sometimes!

While new versions are released fairly often, this doesn’t mean that all or even
many devices update to the latest version. Instead, users get updated phones
historically by purchasing new devices (every 18m on average in US). Beyond that,
updates—including security updates—have to come through the mobile carriers,
meaning that most devices are never updated beyond the version that they are
purchases with.

This is a problem from a consumer perspective, particularly in terms of security!


There are some efforts on Google’s part to to work around this limitation by moving
more and more platform services out of the base operating system into a separate
“App” called Google Play Services.
But what this means for developers is that you can’t expect devices to be running
the latest version of the operating system—the range of versions you need to
support is much greater than even web development!

Common questions

Powered by AI

The fragmented Android device landscape, characterized by numerous devices with varying hardware specifications and OS versions, significantly impacts app development and testing . Developers face the challenge of ensuring compatibility across a wide array of devices, requiring extensive testing and adaptation to different configurations and user interfaces . This complexity increases development time and costs, making it difficult to ensure a uniform user experience across all devices, unlike more unified platforms . Google attempts to address these challenges through developer tools and Google Play Services .

Google's introduction of Android Wear in 2014 and Daydream in 2016 shows a strategic move to expand Android beyond traditional mobile devices into new categories like wearables and virtual reality . Android Wear adapted the OS to accommodate the smaller displays and different interaction patterns of watches, while Daydream extended the platform into immersive experiences, enabling VR applications . These developments illustrate Google's intent to make Android a versatile platform, supporting a broad range of device types, and showing adaptability to emerging technology trends .

The dependency on carriers and manufacturers for Android updates poses significant challenges, as it results in delayed updates and a wide version fragmentation . This situation affects users by leaving them with outdated security and features and developers who need to maintain compatibility with multiple OS versions . Google addresses these issues by shifting some functionality to Google Play Services, providing more timely updates and bypassing the need for full OS upgrades . This enables faster rollout of crucial updates and services independent of carrier and manufacturer timelines .

After acquiring Android Inc. in 2005, Google announced the Open Handset Alliance in 2007, which brought together tech companies to develop open standards for mobile platforms . This move helped in creating a diverse collaboration that included phone manufacturers, mobile carriers, and hardware manufacturers, significantly contributing to Android's widespread adoption . Furthermore, Google released flagship devices such as the Nexus in 2010 to showcase Android's capabilities and later expanded into different device categories with Android Wear and Daydream for wearables and VR platforms, respectively, demonstrating continued strategic expansion .

The Open Handset Alliance (OHA), announced by Google in 2007, played a pivotal role in Android's evolution by fostering collaboration among diverse stakeholders like phone manufacturers, mobile carriers, and hardware companies . This collaboration ensured the widespread adoption and rapid development of Android devices, positioning Android as a leading mobile platform . OHA's influence extended beyond development, impacting standards for open-source mobile systems and encouraging widespread innovation and competition within the mobile ecosystem .

The Android Open Source Project (AOSP) allows developers to examine, modify, and build upon the Android OS code, promoting innovation and customization . However, since AOSP updates must pass through manufacturers and carriers, security updates are delayed, leaving many devices vulnerable because they remain on older OS versions . Google's move to use Google Play Services for delivering updates attempts to mitigate this issue by decoupling some services from direct OS updates, offering a more immediate way to implement security patches .

Google's release of different Android versions, each introducing new features and APIs, is part of a strategy to enhance user experience and expand platform capabilities . By developing versions with increasing API levels, such as Ice Cream Sandwich (API 14) and Nougat (API 24), Google continually improved functional areas and device performance . Enhanced user interface components and support for newer hardware features enable developers to build richer applications, fostering an ecosystem that keeps pace with technological advancements .

Google's Nexus devices, first released in 2010, were crucial in demonstrating Android's platform capabilities and setting industry benchmarks . These flagship devices showcased the latest Android features and offered a pure Android experience free from manufacturer customizations, setting a standard for performance and reliability . Nexus devices also served to encourage manufacturers to push technological boundaries in their own Android devices, thus enhancing the Android ecosystem's overall quality and innovation .

The Android operating system's frequent version updates present a significant challenge for developers due to the wide range of API levels they must support. Each version, nicknamed alphabetically after desserts (e.g., Cupcake, Donut), introduces new APIs, but not all devices receive these updates . As updates depend on manufacturers and carriers, most devices remain on the version they were purchased with, complicating security and feature consistency . Consequently, developers need to ensure compatibility with multiple versions, broadening the development effort compared to platforms where more users adopt newer versions quickly .

Google's strategy of releasing Android versions with dessert-themed nicknames and different API levels has created an engaging and memorable branding for users, contributing positively to Android's public perception . These nicknames make it easier for users to identify and discuss their OS versions, while the explicit API levels provide developers clear guidance on available programming features . For developers, understanding these APIs is crucial for maximizing app functionality and ensuring compatibility, which in turn influences application adoption and user experience .

You might also like