Android Notes-Unit 1 Final
Android Notes-Unit 1 Final
Android Notes-Unit 1 Final
It is a Linux based open source Operating System which was initially designed for
mobile phones. Nowadays it has expanded its functionality to a large variety of devices
ranging from mobile phones, tablets, mini computers to a wide range of other devices such
as wearable computing devices (smart watches, health bands, …), smart home appliances
(smart TV, AC, refrigerators, washing machines, …), vehicle management systems (android
auto) It is a stack of softwares, among which some are operating system application, some
are middleware application and others are key/user application softwares. It is an open source
technology that allows the software to be freely modified and distributed by device manufacturers,
wireless carriers and developers.
Android Logo
Android logo is a green colored robot. It was designed by a designer of Google Inc. Irina Blok.
It was also known as open source project so that anyone can modify and use the logo. The design of
the Android logo is based on the popular washroom logos and a robot image.
Android History
Android Inc. was founded in Palo Alto of California, U.S. by Andy Rubin, Rich Miner, Nick Sears
and Chris White during 2003 aiming to develop operating system for Digital Cameras. Later on due to
the declining market of the digital cameras they changed their aim to develop operating system for
mobile phones. Google Inc. acquired Android Inc. in 2005. In 2007, Apple released its first iPhone with
iOS. In the same year, Google formed a business alliance with 47 companies called OHA (Open Handset
Alliance) aimed at the creation of a standard open platform for mobile devices. The members of OHA
include handset manufacturers (Motorola, HTC), chip makers (Qualcomm, Texas Instruments),
commercialization companies, software companies and network operators (T - mobile). Since its
inception, Android Inc. has travelled a long distance from its first version, Android 1.0, in 2007 to
Android 12.0 (Snowcone) in 2021.
Android Versions
1. Android 1.0(Alpha,Petit four)
Why Android?
● Browser
● Connectivity(wi-fi, Bluetooth, mobile n/w, GPS,NFC,IR)
● Desktop
● Multinotification
● Endless personalization
● Market
● Google integration
● Open source
● Open to carrier
● Future
Features of Android
● Open source: Entire code including the kernel is open to public.
● Database: SQLite (an offline database is used in android).It is a
lightweight opensource RDBMS meant to run on a smartphone.
● Media support: It supports mp4,3GP,webM. Android runs all popular
video, audio and image formats.
● Media streaming support: It supports RTP/RTSP, progressive HTML
streaming, adobe flash streaming, HTTP dynamic streaming.
● Multitouch
● Efficient web browser
● Multitasking support
● Accessibility: Text to speech, voice dialing, voice texting, voice
navigation, face navigation, gesture navigation etc.
● Voice based services: Voice dialing, voice texting, voice navigation etc.
● Extra storage: ROM, micro SD card, USB flash drive, USB HDD.
Stakeholders of Android
● Google Inc
● Original equipment manager
● Android application development companies
● Freelance developers
Android Architecture
3. Library Layer: This layer includes basic libraries used for various
android applications capabilities. Some of them are listed below.
i. Media framework library: It is responsible for the playback of
various multimedia contents (video, audio, images) in the app.
ii. SQLite: Used to run SQLite RDBMS in the app.
iii. Webkit library: It is necessary for the proper working of the
android browser, it enables the following features to the browser
app-HTML-5, CSS, JavaScript, jQuery, Ajax and many more
capabilities.
iv. OpenGL: It manages 3D images.
v. SGL (Scalable Graphics Library): Used for low level image
processing.
vi. SSL (Secure Socket Layer): It is a security enhancement to the
android since many apps perform online banking and other
financial operations. SSL ensures data integrity, authenticity,
illegal access prevention & data privacy.
vii. Lib C: Used to run c code in android.
viii. Surface manager: It is the library responsible for all the window
surfaces rendered by various components in an activity window.
ix. Freetype:It is used to manage all font operations.
Features of SDK
1. No licensing, distribution, development
2. Wi-fi hardware access
3. It supports GSM, CDMA, EDGE, 3G, 4G for the telephony and data
transfer
4. comprehensive APIs for GPS, google map(location based services)etc.
5. Full multimedia hardware control
6. APIs for accelerometer and compass hardware
7. IPC Instant Message Passing
8. Shared data store
9. Integrated open source Webkit based browser
10.Peer-to-Peer (P2P) communication using google talk
11.2D, 3D graphics support
12.It has efficient set of multimedia libraries to playback and record various
multimedia files (video, audio & image)
13.It supports content provider framework to share the component of one
app to another
ADT bundle
1. Eclipse + ADT plug in
2. Android SDK tools
3. Android platform tools
4. Most recent android platform
5. Newest android system image
Emulators
Emulators are an important software component of the android SDK to test an
android app by creating virtual devices. Actually the emulator mimics all
hardware and software capabilities of a physical mobile device except it cannot
place actual phone calls, since it does not have a real SIM inside.
● Emulator has a display in which our android app is displayed
● Emulator, has a selection of navigation and control keys, which can be
pressed using mouse or keyboard to create various events for our
application
● Emulator runs on full android system stack down to the kernel layer.
Including a set of Preinstalled apps (phone, message, camera, browser
etc.) that can be accessed by your application
● Emulator performs dynamic binary translation of the device machine
code for the host Operating System and processor architecture of the
android Development Machine.
Emulator Contains:
1. Multiple keypad / Dialing pad.
2. Sound chip. (input & output capabilities)
3. An ARMV5 CPU and the corresponding memory management unit
(MMU)
4. A 16-bit LCD display
5. one or more keyboards (a QWERTY -based keyboard and associated
Dialing pad (phone buttons)
6. A sound chip among output and input capabilities
7. Flash memory partitions (emulated through disk image files on the
development machine)
8. GSM modem, including a simulated SIM card
9. A camera, using a webcam connected to our development computer.
10.Sensors like an accelerometer, using records from a USB connected
Android device.
DVM
● Dan Bornstein (a google engineer) designed & wrote the DVM
● It is a lightweight JVM
● Dalvik compiler (dex compiler) it receives multiple .class files & compiles
it into a single .dex file.
The executable format of JVM is JAR The executable format of DVM is APK
(one or more .class files) (only one .dex file)
JVM runs .class byte code directly. The .class byte codes are optimized
to .dex format before executing in
DVM
A Simple Android Programme
Activity File (JAVA File – MainActivity.java)
package com.example.activitylifecycles;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
</LinearLayout>