Android Study Guide

Only available on StudyMode
  • Download(s): 158
  • Published: January 24, 2013
Read full document
Text Preview
Android (operating system)
Android is a Linux-based operating system designed primarily for touch screen mobile devices such as smart phones and tablet computers. An open source Linux-based operating system intended for mobile computing platforms Includes a Java API for developing applications

It is not a device or product
Initially developed by Android, Inc., whom Google financially backed and later purchased 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. The first Android-powered phone was sold in October 2008. Android is open source and Google releases the code under the Apache License. This open source code and permissive licensing allows the software to be freely modified and distributed by device manufacturers, wireless carriers and enthusiast developers. Additionally, Android has a large community of developers writing applications ("apps") that extend the functionality of devices, written primarily in a customized version of the Java programming language. Android, an open source operating system for mobile devices (Smartphone and tablet), led by Google. The Android SDK provides a set of tools and APIs to develop Android applications, using Java. So, if you know Java, Android programming is easy. Version

Version| Code name| Release date| API level| Distribution (December 3, 2012)| 4.2| Jelly Bean| November 13, 2012| 17| 0.8%|
4.1.x| Jelly Bean| July 9, 2012| 16| 5.9%|
4.0.x| Ice Cream Sandwich| December 16, 2011| 15| 27.5%| 3.2| Honeycomb| July 15, 2011| 13| 1.2%|
3.1| Honeycomb| May 10, 2011| 12| 0.4%|
2.3.3–2.3.7| Gingerbread| February 9, 2011| 10| 50.6%| 2.3–2.3.2| Gingerbread| December 6, 2010| 9| 0.2%|
2.2| Froyo| May 20, 2010| 8| 10.3%|
2.0–2.1| Eclair| October 26, 2009| 7| 2.7%|
1.6| Donut| September 15, 2009| 4| 0.3%|
1.5| Cupcake| April 30, 2009| 3| 0.1%|

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 APIs written in C and application software running on an application framework which includes Java-compatible libraries based on Apache Harmony. Starting at the bottom is the Linux Kernel. Android uses Linux for its device drivers, memory management, process management, and networking. However you will never be programming to this layer directly. The next level up contains the Android native libraries. They are all written in C/C++ internally, but you'll be calling them through Java interfaces. In this layer you can find the Surface Manager (for compositing windows), 2D and 3D graphics, Media codecs (MPEG-4, H.264, MP3, etc.), the SQL database (SQLite), and a native web browser engine (WebKit). Next is the Android runtime, including the Dalvik Virtual Machine. Dalvik runs dex files, which are coverted at compile time from standard class and jar files. Dex files are more compact and efficient than class files, an important consideration for the limited memory and battery powered devices that Android targets. The core Java libraries are also part of the Android runtime. They are written in Java, as is everything above this layer. Here, Android provides a substantial subset of the Java 5 Standard Edition packages, including Collections, I/O, and so forth. The next level up is the Application Framework layer. Parts of this toolkit are provided by Google, and parts are extensions or services that you write. The most important component of the framework is the Activity Manager, which manages the life cycle of applications and a common "back-stack" for user navigation. Finally, the top layer is the Applications layer. Most of your code will live here, alongside built-in applications such as the Phone and Web Browser. One of the unique and powerful qualities of Android is that...
tracking img