Introduction to android


Published on

This is an for android development introduction

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Introduction to android

  1. 1. Android Introduction Platform Overview @2011 Mihail L. Sichitiu 1
  2. 2. What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware and key applications. @2011 Mihail L. Sichitiu 2
  3. 3. OHA (Open Handset Alliance)A business alliance consisting of 47 companies to develop open standards for mobile devices @2011 Mihail L. Sichitiu 3
  4. 4. Architecture @2011 Mihail L. Sichitiu 4
  5. 5. Android S/W Stack - Application Android provides a set of core applications:  Email Client  SMS Program  Calendar  Maps  Browser  Contacts  Etc All applications are written using the Java language. @2011 Mihail L. Sichitiu 5
  6. 6. Android S/W Stack –App Framework Enabling and simplifying the reuse of components  Developers have full access to the same framework APIs used by the core applications.  Users are allowed to replace components. @2011 Mihail L. Sichitiu 6
  7. 7. Android S/W Stack –App Framework (Cont) Features Feature Role View Used to build an application, including lists, grids, text System boxes, buttons, and embedded web browser Content Enabling applications to access data from other Provider applications or to share their own data Resource Providing access to non-code resources (localized strings, Manager graphics, and layout files) Notification Enabling all applications to display customer alerts in the Manager status bar Activity Managing the lifecycle of applications and providing Manager a common navigation backstack @2011 Mihail L. Sichitiu 7
  8. 8. Android S/W Stack - Libraries Includinga set of C/C++ libraries used by components of the Android system Exposed to developers through the Android application framework @2011 Mihail L. Sichitiu 8
  9. 9. Android S/W Stack - Runtime Core Libraries  Providing most of the functionality available in the core libraries of the Java language  APIs  Data Structures  Utilities  File Access  Network Access  Graphics  Etc @2011 Mihail L. Sichitiu 9
  10. 10. Android S/W Stack – Runtime(Cont) Dalvik Virtual Machine  Providing environment on which every Android application runs  Each Android application runs in its own process, with its own instance of the Dalvik VM.  Dalvik has been written such that a device can run multiple VMs efficiently.  Register-based virtual machine @2011 Mihail L. Sichitiu 10
  11. 11. Android S/W Stack – Runtime(Cont) Dalvik Virtual Machine (Cont)  Executing the Dalvik Executable (.dex) format  .dex format is optimized for minimal memory footprint.  Compilation  Relying on the Linux Kernel for:  Threading  Low-level memory management @2011 Mihail L. Sichitiu 11
  12. 12. Android S/W Stack – Linux Kernel Relying on Linux Kernel 2.6 for core system services  Memory and Process Management  Network Stack  Driver Model  Security Providing an abstraction layer between the H/W and the rest of the S/W stack @2011 Mihail L. Sichitiu 12
  13. 13. Android Application Development Android Eclipse IDE SDK Android Android OR Mobile Emulator Device
  14. 14. Application Building Blocks Activity IntentReceiver Service ContentProvider
  15. 15. IntentReceivers Components that respond to broadcast „Intents‟ Way to respond to external notification or alarms Apps can invent and broadcast their own Intent
  16. 16. Intents Think of Intents as a verb and object; a description of what you want done  E.g. VIEW, CALL, PLAY etc.. System matches Intent with Activity that can best provide the service Activities and Intent Receivers describe what Intents they can service
  17. 17. Intents Home Photo GalleryContacts Picasa “Pick GMail photo” System picks best component Chat for that action Client component makes aBloggerBlogger request for a specific action New components can use existing functionality
  18. 18. Services Faceless components that run in the background  E.g. music player, network download etc…