unit_3_Androiddf(1)
unit_3_Androiddf(1)
Operating System:-
Linux:-
• Linux is a family of free and open-source software operating systems built around the
Linux kernel.
• The development of Linux is one of the most prominent examples of free and open
source software collaboration.
Open Source:-
• The source code of a computer program is made available free of charge to the general
public.
• Users can view the code that comprises the software and make any kind of changes to it
they want.
• Anyone can take the source code and distribute their own program from it.
Android Introduction:-
Android History:-
• Initially, Andy Rubin founded (co-founder: Chris White, Rich Miner and Nick Sears)
Android Incorporation in Palo Alto, California, United states in October, 2003.
• In 17th August 2005, Google acquired android Incorporation.
• The OHA is consortium of 84 firms to develop open standards for mobile devices.
• The OHA was established on 5 November 2007, led by Google with 34 members,
including mobile handset makers, application developers, some mobile carriers and chip
makers.
• HTC Dream (T - Mobile G1) mobile is the world first mobile in 2008 and 2009 i-seried
galaxy in India.
Key Dates(History)
Android Version:
• The first commercial version, Android 1.0, released on September 23, 2008.
• Android code names are confectionery (Sweets and Chocolates) –themed and have been
in alphabetical order since 2009’s Android Cupcake.
Name Version Release date Features
numbers
Android 1.0 Android September 23, -android market, web browser, camera support, Gmail,
1.0 2008 Google contacts, Google calendar, Google maps, YouTube
,Wi-Fi and Bluetooth support.
Android 1.1 Android February 9,2009 -Details and reviews , longer in-call screen timeout ,save
1.1 attachments in messages, Marquee
Cupcake Android April 27, 2009 -google programs (search, mail, contacts, calendar, etc.)
1.5 along with synchronization.
-widgets (such as a search box into the app on the home
screen, virtual keyboards, MPEG-4 video and YouTube
/Picasa uploading.
Donut Android September 15, -search expanded to include bookmarks and history. -
1.6 2009 More camera integration and features.
Éclair Android October 27,2009 -Search expanded to include sms and mms messages, and
2.0-2.1 Htm5 support in the browser.
-More camera features, including flash, zoom and white
balance.
Froyo Android May 20, 2010 -support for Bluetooth hands free.-Push notifications-Wi-
2.2-2.2.3 Fi hotspot functionality. And greater screen resolution.
Gingerbread Android December 6, 2010 -Enhanced copy/paste,-front facing camera-AAC audio
2.3-2.3.7 and -Near field communication (NFC).
Honeycomb Android February 22, 2011 -Introduced on the Motorola Zoom. tablet only version
3.0-3.2.6 that took advantage of larger screens.
Ice Cream Android October 18, 2011 -introduced on Samsung’s Galaxy Nexus, Ice Cream
Sandwich 4.0-4.0.4 Sandwich(ICS) combined Gingerbread and Honeycomb
version into one.-NFC data transfer
Jelly Bean Android July 9,2012 -voice search
4.1-4.3.1 -Swiping and Predictive text
KitKat Android October 31, 2013 -older phones with less than 1GB of RAM memory.
4.4-4.4.4 -OK Google to activate the voice search.
Lollipop Android November 12, -Redesigned user interface, known as Material Design. -
5.0-5.1.1 2014 Enterprise features included separating personal and
business apps.
Android October 2, 2015 -Android Runtime permission included -
Marshmallow 6.0-6.0.1 standardized fingerprint support.
-Automatic data backup to the Google cloud.
-The Google now voice search could be accessed from
the lock screen.
Nougat Android August 22, 2016 -Emergency info cloud be displayed on the lock screen.
7.0-7.1.2 -The setting menu showed more information without
going to a second level
Oreo Android August 21,2017 -improved battery life and performance by limiting what
8.0-8.1 apps can do in the background.
-Users have more control over notifications.
Pie Android August 6, 2018 -improves battery life by offering adaptive features such
9.0 as learning how you use apps and change brightness.
Q Android September 3,2019 -Dark theme, gesture navigation, smart reply, focus
10.0 mode
Android 11 Android September 8,2020 -Conversation section in notifications, built-in screen
11 .0 recording, One-time permissions, chat bubbles.
Snow Cone Android October 4,2021 -Material you design, privacy dashboard, Approximate
12-12.1 March 7,2022 location, quick settings redesign.
Tiramisu Android August 15,2022 -Per-App Language settings, Enhanced material you,
13 Photo picker, Improved privacy for Notifications.
Upside Down Android October 4,2023 -Customization and user interface, Improved battery life
Cake 14 performance Regional, Enhanced privacy and security,
Accessibility improvement, and multilingual, Satellite
connectivity.
Vanilla Ice Android May 15,2024 -Privacy Sandbox, Health Connect, File integrity, Partial
Cream 15 screen sharing, and in-app camera controls, Dynamic
Performance, sensitive notifications, Notification cool
down.
Features of Android:-
Android is a powerful open-source operating system that open-source provides various features
and some of these are listed below:
Open source
Connectivity GSM,CDMA, Wi-Fi, Bluetooth
Media supports AVI, MKV, and MPEG4 etc.
Location tracking Using GPS
Augmented and Virtual Reality support
Support different image formats like JPEG, PNG, GIF,BMP, MP3 etc.
• A way of communication.
• A programming language is a formal language comprising a set of instruction that
produce various kinds of output.
• Most programming languages consist of instructions for computers.
Static apps:
• Static applications are not reliant on Internet connection to an online server or database.
• Apps built in this way are downloaded once, usually periodically updated.
• Are able to function offline only with the device on way they are installed.
Dynamic apps:
• A daemon (adbd), which runs commands on a device. The daemon runs as a background
process on each device.
• A server, which manages communication between the client and the daemon. The server
runs as a background process on your development machine. adb is included in the
Android SDK Platform Tools package.
An Android Virtual Device (AVD) is a configuration that defines the characteristics of an Android
phone, tablet, Wear OS, Android TV, or Automotive OS device that you want to simulate in the
android emulator. The Device Manager is tools you can launch from Android Studio that helps
you create and manage AVDs
• It is a package file format used by Android operating system for distribution and
installation of Mobile apps.
• Similar to executable file .exe in windows operating system.
• The extension of Apk file is .apk.
• It is installed on Android operating system.
• It consists of
Application code (.dex files)
Manifest file
Assets Resource files
Applications –
Applications are the top layer of android architecture. The pre-installed applications (Native
apps) like home, contacts, camera, gallery etc. and third party applications downloaded from the
play store like chat applications, games etc. will be installed on this layer only. Developer apps
It runs within the Android run time with the help of the classes and services provided by the
application framework.
Application framework –
Application Framework provides several important classes which are used to create an Android
application. It provides a generic abstraction for hardware access and also helps in managing the
user interface with application resources. Generally, it provides the services with the help of
which we can create a particular class and make that class helpful for the Applications creation.
It includes different types of services activity manager, notification manager, view system,
package manager etc. which are helpful for the development of our application according to the
prerequisite.
Application runtime –
Android Runtime environment is one of the most important parts of Android. 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. It depends on the layer Linux kernel for threading and low-level
memory management. The core libraries enable us to implement android applications using
the standard JAVA or Kotlin programming languages.
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(Subsidiary General Ledger) and OpenGL both cross-language, cross-platform application
program interface (API) are used for 2D and 3D computer graphics.
• SQLite provides database support a nd FreeType provides font support.
• Web-Kit This open source web browser engine provides all the functionality to display web
content and to simplify page loading.
• 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.
The features of Linux kernel are:
• Security: The Linux kernel handles the security between the application and the system.
• Memory Management: It efficiently handles the memory management thereby providing the
freedom to develop our apps.
• Process Management: It manages the process well, allocates resources to processes whenever
they need them.
• Network Stack: It effectively handles the network communication.
• Driver Model: It ensures that the application works properly on the device and hardware
manufacturers responsible for building their drivers into the Linux build.