android workshop day 1 part 2

13
Android Application Development Workshop: Day 1 Part 2 Ahsanul Karim [email protected] Sentinel Solutions Ltd. http://www.sentinelbd.com http://androidstream.wordpress.com Android Internals: A Quick Overview

Upload: ahsanul-karim

Post on 03-Sep-2014

1.169 views

Category:

Education


5 download

DESCRIPTION

Android Internals: The Quickest Overview

TRANSCRIPT

Page 1: Android Workshop Day 1 Part 2

Android Application Development

Workshop: Day 1 Part 2Ahsanul Karim

[email protected]

Sentinel Solutions Ltd.http://www.sentinelbd.com

http://androidstream.wordpress.com

Android Internals: A Quick Overview

Page 2: Android Workshop Day 1 Part 2

Android is a software stack for wide range of devices including mobiles, tablets and televisions that includes an

Operating SystemMiddlewareKey Applications.

What is Android?

Google’s Andy Rubin describes Android as:

The first truly open and comprehensive platform for mobile devices,

all of the software to run a mobile phone but without the proprietary obstacles that have hindered mobile innovation

An Open Platform for Mobile Development

Page 3: Android Workshop Day 1 Part 2

The Stack

Page 4: Android Workshop Day 1 Part 2

The Stack: Linux Kernel

Android runs of LinuxLinux provides:1. Hardware Abstraction

Layer2. Memory Management3. Process Management4. Networking

Users never see Linux sub-system

(adb shell commands opens Linux shell we’ll see later)

Page 5: Android Workshop Day 1 Part 2

The Stack: Linux Kernel

Android runs of LinuxLinux provides:1. Hardware Abstraction

Layer2. Memory Management3. Process Management4. Networking

Users never see Linux sub-system

(adb shell commands opens Linux shell we’ll see later)

Page 6: Android Workshop Day 1 Part 2

The Stack: Native LibrariesBionic, a super fast and small GPL-based libc library optimized for embedded use. Surface Manager for composing window manager with off-screen buffering. 2D and 3D graphics hardware support or software simulation. Media codecs offer support for major audio/video codecs SQLite database WebKit library for fast HTML rendering

Page 7: Android Workshop Day 1 Part 2

The Stack: Android RuntimeDalvik VM

Every Android app runs in its own process, with its own instance of the Dalvik VM.

Why Dalvik VM?

1. Optimized2. Small memory footprints3. Register based architecture4. Security5. Or may be Google’s trick to

avoid SUN’s lawsuit

Page 8: Android Workshop Day 1 Part 2

The Stack: Application FrameworkActivity Manager controls the life cycle of the app

Resource Manager manages everything that is not the code

Location Manager figures out the location of the phone (GPS, GSM, WiFi)

Notification Manager for events such as arriving messages, appointments, etc

Page 9: Android Workshop Day 1 Part 2

The Stack: Applications

Shipped Apps:an email client, SMS program, calendar, maps, browser, contacts etc.

Third Party Apps

This is where we are

Page 10: Android Workshop Day 1 Part 2

What is Android SDK

Provides all necessary tools to develop Android applications. This includes 1. a compiler, 2. debugger 3. a device emulator, 4. Own virtual machine to run Android programs.

background processing rich user interface library OpenGL libraries access to the file system

embedded SQLite database

Page 11: Android Workshop Day 1 Part 2

Android SDK FeaturesFeatures/APIs

Connectivity+Telephony GSM, EDGE, 3G, 4G, and LTE data transfer+calls+SMS

Location API APIs for GPS and Network based location detection

MAP Controls Full support for map integration+controls

Multimedia Full Multimedia hardware control (camera+recorder+audio+video+still images)

Sensors APIs for using sensor hardware including accelerometer, compasses, barometers etc.

Bluetooth & NFC Peer to peer communication

C2DM Cloud to Device Messaging (Push Notification)

Page 12: Android Workshop Day 1 Part 2

Android SDK FeaturesFeatures/APIs

Shared Data Stores Shared Data Stores, APIs for contacts, social networks, calendar and multimedia

Background Services Background Services and processes

Home Screen Widgets+ Live WallpaperHTML5 Web-kit browser

Localization Framework

Reuse of Application componentSQLite Data storage

Page 13: Android Workshop Day 1 Part 2

Android Features (Cont.)

Light Sensor

Thermal Sensor

Gyroscope

Accelerometer

Magnetic Sensor

GPS

Your AppWith logic to

Actuate+ =

TTSVoice Search