MAD - Chapter 1 - Notes
MAD - Chapter 1 - Notes
Introduction to Android
Android Versions
The different android versions from the beginning to the present are mentioned
below from 1.0 to 2.0.
Android Versions from 1.0 – The first Android version like 1.0 was released
1.1 in the year 2008 but it didn’t have any
codename.
Android Version – 1.5 In the year 2009, the 1.5 android version was
released which is named Cupcake.
Android Version – 1.6 The Android version – 1.6 was released in the
year 2009 which is called Donut. The ability of
this version is, it operates on different screen
sizes as well as resolutions.
Android Versions from 2.0 – Éclair 2.0 version was released after six weeks
2.1 of the Donut version.
Android Version – 2.2 After four months of 2.1version invention, the
Android 2.2 version was released which is
called Froyo.
Android Version 2.3 The first true visual identity of Android version
2.3 was released in the year 2010 namely
Gingerbread
Android Version from 3.0 – 3.2 In the year 2011, the versions from 3.0 – 3.2
were released which is named Honeycomb
Android Version 4.0 Android 4.0 was released in the year 2011
which is called Ice Cream Sandwich.
Android Versions 4.1 – 4.3 Android Versions 4.1 to 4.3 were released
between 2012 to 2013 which is called Jelly
Bean.
Android Version 4.4 Android Version 4.4 was released in Late-
2013’s which is called KitKat.
Android 5.0 The version of Android 5.0 was launched in the
year 2014, Nov in the Nexus 6 device which is
called Lollipop
Android 5.1 This version of Android 5.1 was released in
March 2015 called Lollipop
Android 6.0 Android 6.0 Version like Marshmallow was
released in Oct 2015.
Android 7.0 Android 7.0 version was released by Google in
Aug 2016 called Nougat.
Android 7.1, 7.1.1 & 7.1.2 Android 7.1 version was released in Oct 2016,
Nougat called Nougat
Android 8.0 Android 8.0 version was released in Aug 2017
called Oreo.
Android 8.1.0 Android 8.1.0 version was released in Dec
2017, called Oreo
Android Version 9 Pie Android version 9 Pie was released in Aug
2018
Android Version 10 Android version 10 was launched in September
2019
Android Version 11 Android version 11 was released recently on
September 8th, 2020
Lower overall handset costs: Opens up resources, which facilitates the focus
on creating innovative applications, solutions and services.
Developer-friendly environment: In the open-source community, developers
share notes to expedite application development.
Post-development: Provides an ideal channel for application marketing and
distribution.
Android Ecosystem
Features of Android
1) Near Field Communication (NFC)
Most Android devices support NFC, which allows electronic devices to easily interact
across short distances.
2) Alternate Keyboards
Android supports multiple keyboards and makes them easy to install; the SwiftKey,
Skype, and 8pen apps all offer ways to quickly change up your keyboard style.
3) Infrared Transmission
The Android operating system supports a built-in infrared transmitter, allowing you to
use your phone or tablet as a remote control.
4) No-Touch Control
Using Android apps such as Wave Control, users can control their phones touch-free,
using only gestures.
5) Automation
The Tasker app controls the app permissions but also automate them. Do you only
want your location services to be active during the day? Want to create a customized
way to start your music—for example, with a voice command and at a certain
volume? Tasker can help.
Using the Android Market or third-party options like AppBrain, we can download
apps on PC and then automatically sync them with Android, no plugging required.
While it’s possible to hack certain phones to customize the home screen, Android
comes with this capability from the get-go. Download a third-party launcher like
Nova, Apex or Slide and you can add gestures, new shortcuts, or even performance
enhancements for older-model devices.
9) Widgets
Apps are versatile, but sometimes you want information at a glance instead of having
to open an app and wait for it to load. Android widgets let you display just about any
feature you choose, right on the home screen—including weather apps, music
widgets, or productivity tools that helpfully remind you of upcoming meetings or
approaching deadlines.
Need of Android
Zero/negligible development cost
The development tools like Android SDK, JDK, and Eclipse IDE etc. are free to
download for the android mobile application development.
Open Source
The Android OS is an open-source platform based on the Linux kernel and multiple
open-source libraries. In this way developers are free to contribute or extend the
platform as necessary for building mobile apps which run on Android devices.
Multi-Platform Support
In market, there are a wide range of hardware devices powered by the Android OS,
including many different phones and tablet. Even development of android mobile
apps can occur on Windows, Mac OS or Linux.
Multi-Carrier Support
World wide a large number of telecom carriers like Airtel, Vodafone, Idea Cellular,
AT&T Mobility, BSNL etc. are supporting Android powered phones.
Android Market place (Google Play store) has very few restrictions on the content or
functionality of an android app. So the developer can distribute theirs app through
Google Play store and as well other distribution channels like Amazon’s app store.
Android Architecture
Application Framework
Application runtime
It contains components like core libraries and the Dalvik virtual machine(DVM).
Mainly, it provides the base for the application framework and powers our
application with the help of the core libraries.
Like Java Virtual Machine (JVM), Dalvik Virtual Machine (DVM) is a register-
based virtual machine and specially designed and optimized for android to ensure
that a device can run multiple instances efficiently.
Platform libraries
The Platform Libraries includes various C/C++ core libraries and Java based
libraries such as Media, Graphics, Surface Manager, OpenGL etc. to provide a
support for android development.
Media library provides support to play and record an audio and video
formats.
Surface manager responsible for managing access to the display subsystem.
SGL and OpenGL both cross-language, cross-platform application program
interface (API) are used for 2D and 3D computer graphics.
SQLite provides database support and FreeType provides font support.
SSL (Secure Sockets Layer) is security technology to establish an
encrypted link between a web server and a web browser.
Linux Kernel
Linux Kernel is heart of the android architecture. It manages all the available
drivers such as display drivers, camera drivers, Bluetooth drivers, audio drivers,
memory drivers, etc. which are required during the runtime.
The Linux Kernel will provide an abstraction layer between the device
hardware and the other components of android architecture.
It is responsible for management of memory, power, devices etc.