Google android os
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Google android os

on

  • 322 views

 

Statistics

Views

Total Views
322
Views on SlideShare
322
Embed Views
0

Actions

Likes
0
Downloads
5
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Google android os Presentation Transcript

  • 1. Android OS Kesav Kaliyaperumal kesav.kaliyaperumal@gmail.com
  • 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
  • 7. Android Architecture
  • 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
  • 24. Resources • http://www.android.com • http:// http://android-developers.blogspot.com • http://developer.motorola.com/