Your SlideShare is downloading. ×
0
ANDROID OVERVIEW
Android is the most
popular mobile
operarting system in
the world with a User
Base of precisely 1
Billion...
HISTORY AND POSSIBLE FUTURE
2005

Google buy Android Inc.
Work on Dalvik starts

2007

Open Handset Alliance Announced
Ear...
VISION OF ANDROID

Our goal is not just a single
device. Our vision is a mobile
platform that runs on many
many different ...
PLATFORM VERSIONS
Version

API Level

Nickname

Android 1.0

1

Android

Android 1.1

2

Android

Android 1.5

3

Cupcake
...
VERSION DISTRIBUTION
ADD-ONs
“WITH GOOGLE”

Devices that have “with Google” add-on feature a set of Google’s proprietary
applications, such as Maps, Gm...
ANDROID STACK
THE STACK
LINUX KERNEL
Android runs on Linux.
Linux provides:
Hardware abstraction layer
Memory management
Process management
Networ...
NATIVE LIBRARIES
Pieces borrowed from other
open source projects:
Bionic, a super fast and small
license-friendly libc lib...
DALVIK
Dalvik VM is Android
implementation of Java VM
Dalvik is optimized for mobile
devices:
• Battery consumption
• CPU ...
APPLICATION FRAMEWORK
The rich set of system
services wrapped in an
intuitive Java API.
This ecosystem that
developers can...
Dalvik Executable + Resources = APK
Must be signed (but debug key is okay
for development)
Many markets with different pol...
MAIN BUILDING BLOCKS
ACTIVITY AND IT'S LIFECYCLE
An Activity
Represents a screen
or a window
Activities have a
well - defined
lifecycle.
The
An...
INTENTS
Intents represent
events or actions.
They are to
Android apps what
hyperlinks are to
websites. Sort of.
Intents ca...
SERVICES AND IT'S LIFECYCLE
Services are code that runs
in the background. They
can be started and
stopped. Services doesn...
BROADCAST RECEIVERS

An Intent-based publish-subscribe mechanism.
Great for listening system events such as SMS messages.
ADAPTERS

To make sure they run smoothly, Android uses Adapters to connect
them to their data sources.
A typical data sour...
TWO UI APPROACHES

You can mix and match both styles. Best practice:
Start with XML and declare most of UI
Switch to Java ...
SANDBOXING
No app can adversely impact other apps,
user, or OS
Cannot read/write user’s private data
Cannot read other app...
Upcoming SlideShare
Loading in...5
×

Android Overview

235

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
235
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Android Overview"

  1. 1. ANDROID OVERVIEW Android is the most popular mobile operarting system in the world with a User Base of precisely 1 Billion and growing at the rate of 1 million new activations every day.
  2. 2. HISTORY AND POSSIBLE FUTURE 2005 Google buy Android Inc. Work on Dalvik starts 2007 Open Handset Alliance Announced Early SDK Releases 2008 - 10 Android becomes dominant mobile platform Games, Tablets, Tvs, Sunglasses etc Beyond Phones 2011 - 13 Future ?
  3. 3. VISION OF ANDROID Our goal is not just a single device. Our vision is a mobile platform that runs on many many different devices. – Eric Schmidt
  4. 4. PLATFORM VERSIONS Version API Level Nickname Android 1.0 1 Android Android 1.1 2 Android Android 1.5 3 Cupcake Android 1.6 4 Donut Android 2.0 5 Eclair Android 2.01 6 Eclair Android 2.1 7 Eclair Android 2.2 8 Froyo Android 2.3 9 Gingerbread Android 2.3.3 10 Gingerbread Android 3.x 11, 12, 13 Honeycomb Android 4.0 14, 15 Ice Cream Sandwich Android 4.1.x; 4.2.x; 4.3.x 16, 17, 18 Jelly Bean Android 4.4 19 KitKat
  5. 5. VERSION DISTRIBUTION
  6. 6. ADD-ONs
  7. 7. “WITH GOOGLE” Devices that have “with Google” add-on feature a set of Google’s proprietary applications, such as Maps, Gmail, Gtalk, and many others. OEMs and carriers typically enter into a licensing agreement with Google in order to distribute Google version of Android.
  8. 8. ANDROID STACK
  9. 9. THE STACK
  10. 10. LINUX KERNEL Android runs on Linux. Linux provides: Hardware abstraction layer Memory management Process management Networking Users never see Linux sub system The adb shell command opens Linux shell
  11. 11. NATIVE LIBRARIES Pieces borrowed from other open source projects: Bionic, a super fast and small license-friendly libc library optimized for Android WebKit library for fast HTML Rendering OpenGL for graphics Media codecs offer support for major audio/video codecs SQLite database Much more...
  12. 12. DALVIK Dalvik VM is Android implementation of Java VM Dalvik is optimized for mobile devices: • Battery consumption • CPU capabilities Key Dalvik differences: • Dalvik runs .dex files • More efficient and compact implementation • Different set of Java libraries than JDK
  13. 13. APPLICATION FRAMEWORK The rich set of system services wrapped in an intuitive Java API. This ecosystem that developers can easily tap into is what makes writing apps for Android easy. Location, web, telephony, WiFi, Bluetooth, notifications, media, camera, just to name a few.
  14. 14. Dalvik Executable + Resources = APK Must be signed (but debug key is okay for development) Many markets with different policies
  15. 15. MAIN BUILDING BLOCKS
  16. 16. ACTIVITY AND IT'S LIFECYCLE An Activity Represents a screen or a window Activities have a well - defined lifecycle. The Android OS manages your activity by changing its state.
  17. 17. INTENTS Intents represent events or actions. They are to Android apps what hyperlinks are to websites. Sort of. Intents can be implicit or explicit.
  18. 18. SERVICES AND IT'S LIFECYCLE Services are code that runs in the background. They can be started and stopped. Services doesn’t have UI. Service also has a lifecycle, but it’s much simpler than activity’s.
  19. 19. BROADCAST RECEIVERS An Intent-based publish-subscribe mechanism. Great for listening system events such as SMS messages.
  20. 20. ADAPTERS To make sure they run smoothly, Android uses Adapters to connect them to their data sources. A typical data source is an Array or a Database
  21. 21. TWO UI APPROACHES You can mix and match both styles. Best practice: Start with XML and declare most of UI Switch to Java and implement the UI logic
  22. 22. SANDBOXING No app can adversely impact other apps, user, or OS Cannot read/write user’s private data Cannot read other app’s data Cannot perform network access Cannot keep device awake, and so on Each application is its own sandbox To share resources, apps need to request permissions, User must grant permissions at install time An application is an island on its own. It contains any number of Activities, Services, Receivers and Providers. It has its own file system, database, place to store native libraries.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×