SlideShare a Scribd company logo
1 of 24
Android OS
Kesav Kaliyaperumal
kesav.kaliyaperumal@gmail.com
Yummy Desserts!
• Cupcake
• Donuts
• Éclair
• Frozen Yoghurt (Froyo)
• Gingerbread
• Honeycomb
What do these have in common?
Smartphone OS
• Symbian
• Windows Mobile
• RIM Blackberry OS
• Apple iOS
• Google Android
• Palm WebOS
• Windows Phone 7
Android OS
• Fastest growing mobile OS
• Over 300,000 Android activations a day
• Android overtook iOS as the dominant OS
in US during 2H 2010
• First phone launched HTC G1 in 2008
• Currently an OS of choice for Motorola,
HTC, Samsung, Sony Ericsson, among
others
• Software updates every few months
Android – what is it?
• software stack for mobile devices
– incl. OS, middleware and key applications
• Open source – source code is open and contributions are welcome
• application framework enabling reuse/replacement of apps
• Dalvik virtual machine optimized for mobile
• integrated browser based on webkit
• Optimized graphics – 2D graphics library, 3D based on OPEN GL
ES
• SQLite for data storage
• Media support (MPEG4, H.264, MP3, AAC, JPG, PNG,…)
• Support for radio interfaces, Bluetooth, WiFi, Camera, GPS,
accelerometer
• Software Development Kit (SDK)
• Preinstalled applications from Google (GMS)
– Gmail, Maps, Search, Voice Search, Youtube
Software Stack
• Linux kernel
• Libraries
• Android run time
– core libraries
– Dalvik virtual machine
• application layer
• application protocol
Android Architecture
Android
• Google Maps and other GMS applications
• Background services and applications
– allows multi tasking of applications
• Shared Data and interprocess communication
• All applications are equal
– does not discriminate between native and non-native
applications
– allows any applications to be enhanced/reused
• p2p interdevice application messaging
Dalvik VM
• All applications written in Java and converted to
the dalvik executable .dex
• Every android app runs its own process, with its
own instance of the dalvik virtual machine
• Not a traditional JVM, but a custom VM
designed to run multiple instances efficiently on
a single device
• VM uses linux kernel to handle low-level
functionality incl. security, threading, process
and memory management
Application Framework
• Rich, extensible set of Views
– apps can inclused lists, grids, text boxes, buttons,
web browser
• Content Providers
– allows data access from other applications or share
own data
• Resource Manager
– access to localized strings, graphics, layout files
• Notification Manager
– enables custom alerts to be displayed in status bar
• Activity Manager
– Manages lifecycle of applications and provides
navigation backstack
Application Fundamentals
• Activities
– application presentation layer
• Services
– invisible components, update data sources, visible activities, trigger notifications
– perform regular processing even when app is not active or invisible
• Content Providers
– shareable data store
• Intents
– message passing framework
– broadcase messages system wide, for an action to be performed
• Broadcast receivers
– consume intent broadcasts
– lets app listen for intents matching a specific criteria like location
• Notifications
– Toast notification
– Status Bar Notification
– Dialog notification
Applications
• All apps (native and 3rd
party) are written using
the same APIs and run on the same run time
executable
• All apps have APIs for hardware access,
location-based services, support for background
services, map-based activities, 2D and 3D
graphics.
• App Widgets are miniature app views that can
be embedded in other apps like Home Screen
App Priority and Processes
Android apps do not have control over their own
life cycles
Aggressively manages resources to ensure device
responsiveness and kills process/apps when
needed
• Active Process – critical priority
• Visible Process – high priority
• Started Service Process
• Background Process – low priority
• Empty process
Client apps
• Developed using the Android SDK and installed
on user devices
• Compiled Java code, with data and resource –
bundled by Android Asset Packaging tool
(AAPT) into Android package or .apk
• All applications have Android Manifest file in its
root directory
– provides essential information about app
• Could be installed directly on phone, but
necessary to be distributed thru Market
Web Apps
• An alternative to standalone apps
• Developed using web standards and
accessed through browser – nothing to
install on devices
• Mixing client and web apps is also
possible – Client apps can embed web
pages using “Webview” in Android app
SDK
• Android APIs, Full Documentation and Sample code
• Development tools
– Dalvik Debug Monitor Service (DDMS)
– Android Debug Bridge (ADB)
– Android Emulator
• Online support and blog
• Native Development Kit also available
– allows developers to implement parts of apps in native-code
languages like C/C++
– Plug in available to use Eclipse integrated development
environment
• Developer forums and developer phones from Google,
MOTO Dev studio from Motorola
Android Market
• Google Market - Part of GMS apps
• 3rd
party apps submitted to Google, approved and distributed through
Market
• Both Free and Paid apps
• Apps now limited to 50 MB; updates possible through Market
• Monetization through ads available
• Available in many countries, not all countries have support for paid
apps
• Other Market place applications available – Amazon has announced
its own Android Market place
• App searches filtered based on Manifest file (eg. if a device does not
have trackball, apps using trackball will be filtered out)
• Every app publishes a list of components the app will access and
permissions need to be granted before installation
• Apps installed on device and SD card (SD Card from Froyo)
Search
• Core feature in android
• User should be able to search any data on
device or internet
• Usually one of the android buttons
• Search suggestions based on recent queries
• Provide custom search suggestions that match
actual results in application data
• system side Quick Search Box
• Voice Search available and enhanced in recent
releases
Locations & Maps
• Compelling and most popular apps for
mobile devices
• Google Maps provides free navigation
• applications allowed access to location
services supported by device
• Google provides Maps external library
– allows built-in downloading, rendering and
caching of Maps tiles, and other display
options and controls
Device Administration
• Froyo introduces support for enterprise
applications with Device Administraion API
• allows to create security-aware
applications to control employee devices
• Apps might include
– Email clients
– remote wipe
– device management services and apps
Android Software Updates
• Android 1.0 – G1
• 1.5 – Cupcake
• 1.6 – Donuts (CDMA support)
• 2.0 – Éclair (Droid introduced with Éclair)
• 2.2 – Froyo
• 2.3 Gingerbread (SDK released 2 weeks ago and source
will follow soon)
• API Levels used by apps to identify software version on
the device
• Android apps are generally forward compatible with
newer version, but not necessarily backwards
compatible
Compatibility
• Why?
– Allow customizable devices
– Create Common eco system
• Android compatibility is free and easy
– Obtain Android source code
– Comply with Android Compatibility Definition (ACD) doc
• List requirements that need to be met for devices to be compatible
with a particular version on Android
– Pass the Compatibility Test Suite (CTS)
• Automated test harness running on desktop, manages test
exectuion
• Test cases written, packaged as .apk to run on actual device or
emulator
• Porting guide available for bringing up Android on
custom HW
Other possibilities
• Google TV - a new platform based on
Android
• Tablets – Samsung Galaxy tab introduced
in Oct 2010
• eBook reader – Latest Barnes and Noble
Nook is an Android tablet
Resources
• http://www.android.com
• http://
http://android-developers.blogspot.com
• http://developer.motorola.com/

More Related Content

What's hot

Android Security Humla Part 1
Android Security Humla Part 1Android Security Humla Part 1
Android Security Humla Part 1Nikhil Kulkarni
 
Lec005 android start_program
Lec005 android start_programLec005 android start_program
Lec005 android start_programEyad Almasri
 
Synapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile applicationSynapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile applicationsaritasingh19866
 
Tizen operating system seminar ppt
Tizen operating system seminar pptTizen operating system seminar ppt
Tizen operating system seminar pptAjinkyalenekar12
 
Adobe AIR Development for the BlackBerry PlayBook
Adobe AIR Development for the BlackBerry PlayBookAdobe AIR Development for the BlackBerry PlayBook
Adobe AIR Development for the BlackBerry PlayBookKyle McInnes
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to AndroidOum Saokosal
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions newJoe Jacob
 
Android Infrastructure
Android InfrastructureAndroid Infrastructure
Android InfrastructureEyad Almasri
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Lecture 2: Android Introduction
Lecture 2: Android Introduction Lecture 2: Android Introduction
Lecture 2: Android Introduction Eyad Almasri
 
Mobile performance testing
Mobile performance testingMobile performance testing
Mobile performance testinghunz
 
Performance testing – mobile apps session1
Performance testing – mobile apps   session1Performance testing – mobile apps   session1
Performance testing – mobile apps session1Jyothirmayee Pola
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App DevelopmentChris Morrell
 

What's hot (20)

Android Security Humla Part 1
Android Security Humla Part 1Android Security Humla Part 1
Android Security Humla Part 1
 
Android
Android Android
Android
 
Lec005 android start_program
Lec005 android start_programLec005 android start_program
Lec005 android start_program
 
Android
AndroidAndroid
Android
 
Synapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile applicationSynapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile application
 
Tizen operating system seminar ppt
Tizen operating system seminar pptTizen operating system seminar ppt
Tizen operating system seminar ppt
 
Mobile applications development
Mobile applications developmentMobile applications development
Mobile applications development
 
Adobe AIR Development for the BlackBerry PlayBook
Adobe AIR Development for the BlackBerry PlayBookAdobe AIR Development for the BlackBerry PlayBook
Adobe AIR Development for the BlackBerry PlayBook
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
 
Lick my Lollipop
Lick my LollipopLick my Lollipop
Lick my Lollipop
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions new
 
Android Infrastructure
Android InfrastructureAndroid Infrastructure
Android Infrastructure
 
Android
AndroidAndroid
Android
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android basics
Android basicsAndroid basics
Android basics
 
Lecture 2: Android Introduction
Lecture 2: Android Introduction Lecture 2: Android Introduction
Lecture 2: Android Introduction
 
Mobile computing
Mobile computingMobile computing
Mobile computing
 
Mobile performance testing
Mobile performance testingMobile performance testing
Mobile performance testing
 
Performance testing – mobile apps session1
Performance testing – mobile apps   session1Performance testing – mobile apps   session1
Performance testing – mobile apps session1
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 

Similar to Google android os

18ITT61 - Introduction.pptx
18ITT61 - Introduction.pptx18ITT61 - Introduction.pptx
18ITT61 - Introduction.pptxMugiiiReee
 
Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA NITIN GUPTA
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versionsindiangarg
 
Android Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfAndroid Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfNomanKhan869872
 
Overview of Adroid Architecture.pptx
Overview of Adroid Architecture.pptxOverview of Adroid Architecture.pptx
Overview of Adroid Architecture.pptxdebasish duarah
 
CNIT 128 Ch 4: Android
CNIT 128 Ch 4: AndroidCNIT 128 Ch 4: Android
CNIT 128 Ch 4: AndroidSam Bowne
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidJawad Mohmand
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android DevelopmentCan Elmas
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Javaamaankhan
 
Mobile appliaction w android week 1 by osama
Mobile appliaction w android week 1 by osamaMobile appliaction w android week 1 by osama
Mobile appliaction w android week 1 by osamaOsama Ghandour Geris
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to AndroidNitinMehra2205
 

Similar to Google android os (20)

Android quick talk
Android quick talkAndroid quick talk
Android quick talk
 
18ITT61 - Introduction.pptx
18ITT61 - Introduction.pptx18ITT61 - Introduction.pptx
18ITT61 - Introduction.pptx
 
Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versions
 
Android Revolution
Android RevolutionAndroid Revolution
Android Revolution
 
Android Applications
Android ApplicationsAndroid Applications
Android Applications
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android ppt
Android ppt Android ppt
Android ppt
 
Android Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfAndroid Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdf
 
Overview of Adroid Architecture.pptx
Overview of Adroid Architecture.pptxOverview of Adroid Architecture.pptx
Overview of Adroid Architecture.pptx
 
CNIT 128 Ch 4: Android
CNIT 128 Ch 4: AndroidCNIT 128 Ch 4: Android
CNIT 128 Ch 4: Android
 
128-ch4.pptx
128-ch4.pptx128-ch4.pptx
128-ch4.pptx
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Java
 
Mobile appliaction w android week 1 by osama
Mobile appliaction w android week 1 by osamaMobile appliaction w android week 1 by osama
Mobile appliaction w android week 1 by osama
 
Android
AndroidAndroid
Android
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
 
Android zensar
Android zensarAndroid zensar
Android zensar
 

Recently uploaded

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 

Google android os

  • 2. Yummy Desserts! • Cupcake • Donuts • Éclair • Frozen Yoghurt (Froyo) • Gingerbread • Honeycomb What do these have in common?
  • 3. Smartphone OS • Symbian • Windows Mobile • RIM Blackberry OS • Apple iOS • Google Android • Palm WebOS • Windows Phone 7
  • 4. Android OS • Fastest growing mobile OS • Over 300,000 Android activations a day • Android overtook iOS as the dominant OS in US during 2H 2010 • First phone launched HTC G1 in 2008 • Currently an OS of choice for Motorola, HTC, Samsung, Sony Ericsson, among others • Software updates every few months
  • 5. Android – what is it? • software stack for mobile devices – incl. OS, middleware and key applications • Open source – source code is open and contributions are welcome • application framework enabling reuse/replacement of apps • Dalvik virtual machine optimized for mobile • integrated browser based on webkit • Optimized graphics – 2D graphics library, 3D based on OPEN GL ES • SQLite for data storage • Media support (MPEG4, H.264, MP3, AAC, JPG, PNG,…) • Support for radio interfaces, Bluetooth, WiFi, Camera, GPS, accelerometer • Software Development Kit (SDK) • Preinstalled applications from Google (GMS) – Gmail, Maps, Search, Voice Search, Youtube
  • 6. Software Stack • Linux kernel • Libraries • Android run time – core libraries – Dalvik virtual machine • application layer • application protocol
  • 8. Android • Google Maps and other GMS applications • Background services and applications – allows multi tasking of applications • Shared Data and interprocess communication • All applications are equal – does not discriminate between native and non-native applications – allows any applications to be enhanced/reused • p2p interdevice application messaging
  • 9. Dalvik VM • All applications written in Java and converted to the dalvik executable .dex • Every android app runs its own process, with its own instance of the dalvik virtual machine • Not a traditional JVM, but a custom VM designed to run multiple instances efficiently on a single device • VM uses linux kernel to handle low-level functionality incl. security, threading, process and memory management
  • 10. Application Framework • Rich, extensible set of Views – apps can inclused lists, grids, text boxes, buttons, web browser • Content Providers – allows data access from other applications or share own data • Resource Manager – access to localized strings, graphics, layout files • Notification Manager – enables custom alerts to be displayed in status bar • Activity Manager – Manages lifecycle of applications and provides navigation backstack
  • 11. Application Fundamentals • Activities – application presentation layer • Services – invisible components, update data sources, visible activities, trigger notifications – perform regular processing even when app is not active or invisible • Content Providers – shareable data store • Intents – message passing framework – broadcase messages system wide, for an action to be performed • Broadcast receivers – consume intent broadcasts – lets app listen for intents matching a specific criteria like location • Notifications – Toast notification – Status Bar Notification – Dialog notification
  • 12. Applications • All apps (native and 3rd party) are written using the same APIs and run on the same run time executable • All apps have APIs for hardware access, location-based services, support for background services, map-based activities, 2D and 3D graphics. • App Widgets are miniature app views that can be embedded in other apps like Home Screen
  • 13. App Priority and Processes Android apps do not have control over their own life cycles Aggressively manages resources to ensure device responsiveness and kills process/apps when needed • Active Process – critical priority • Visible Process – high priority • Started Service Process • Background Process – low priority • Empty process
  • 14. Client apps • Developed using the Android SDK and installed on user devices • Compiled Java code, with data and resource – bundled by Android Asset Packaging tool (AAPT) into Android package or .apk • All applications have Android Manifest file in its root directory – provides essential information about app • Could be installed directly on phone, but necessary to be distributed thru Market
  • 15. Web Apps • An alternative to standalone apps • Developed using web standards and accessed through browser – nothing to install on devices • Mixing client and web apps is also possible – Client apps can embed web pages using “Webview” in Android app
  • 16. SDK • Android APIs, Full Documentation and Sample code • Development tools – Dalvik Debug Monitor Service (DDMS) – Android Debug Bridge (ADB) – Android Emulator • Online support and blog • Native Development Kit also available – allows developers to implement parts of apps in native-code languages like C/C++ – Plug in available to use Eclipse integrated development environment • Developer forums and developer phones from Google, MOTO Dev studio from Motorola
  • 17. Android Market • Google Market - Part of GMS apps • 3rd party apps submitted to Google, approved and distributed through Market • Both Free and Paid apps • Apps now limited to 50 MB; updates possible through Market • Monetization through ads available • Available in many countries, not all countries have support for paid apps • Other Market place applications available – Amazon has announced its own Android Market place • App searches filtered based on Manifest file (eg. if a device does not have trackball, apps using trackball will be filtered out) • Every app publishes a list of components the app will access and permissions need to be granted before installation • Apps installed on device and SD card (SD Card from Froyo)
  • 18. Search • Core feature in android • User should be able to search any data on device or internet • Usually one of the android buttons • Search suggestions based on recent queries • Provide custom search suggestions that match actual results in application data • system side Quick Search Box • Voice Search available and enhanced in recent releases
  • 19. Locations & Maps • Compelling and most popular apps for mobile devices • Google Maps provides free navigation • applications allowed access to location services supported by device • Google provides Maps external library – allows built-in downloading, rendering and caching of Maps tiles, and other display options and controls
  • 20. Device Administration • Froyo introduces support for enterprise applications with Device Administraion API • allows to create security-aware applications to control employee devices • Apps might include – Email clients – remote wipe – device management services and apps
  • 21. Android Software Updates • Android 1.0 – G1 • 1.5 – Cupcake • 1.6 – Donuts (CDMA support) • 2.0 – Éclair (Droid introduced with Éclair) • 2.2 – Froyo • 2.3 Gingerbread (SDK released 2 weeks ago and source will follow soon) • API Levels used by apps to identify software version on the device • Android apps are generally forward compatible with newer version, but not necessarily backwards compatible
  • 22. Compatibility • Why? – Allow customizable devices – Create Common eco system • Android compatibility is free and easy – Obtain Android source code – Comply with Android Compatibility Definition (ACD) doc • List requirements that need to be met for devices to be compatible with a particular version on Android – Pass the Compatibility Test Suite (CTS) • Automated test harness running on desktop, manages test exectuion • Test cases written, packaged as .apk to run on actual device or emulator • Porting guide available for bringing up Android on custom HW
  • 23. Other possibilities • Google TV - a new platform based on Android • Tablets – Samsung Galaxy tab introduced in Oct 2010 • eBook reader – Latest Barnes and Noble Nook is an Android tablet