Android An Open Platform For Mobile Devices

  • 10,503 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • gdd
    Are you sure you want to
    Your message goes here
  • Nice
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
10,503
On Slideshare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
1,210
Comments
2
Likes
35

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Android™ An Open Platform for Mobile Devices
  • 2. Outline
    • Introduction
      • What is Android?
      • Android: How it came to be
      • Android Features
    • Android Architecture
    • Anatomy of an Android Application
    • Hello Android
    • Life Cycle of an Android Application
    • Future of Android
  • 3. What is Android?
    • Android
      • Open, free software platform for mobile devices with a complete software stack
        • Operating system
        • Middleware
        • Key mobile applications
      • Based on Linux operating system
      • Made available as open source via the Apache v2 license
        • Industry can add proprietary functionality to their products without giving anything back to the platform
        • Companies can remove functionality if they choose
  • 4. Android: How it came to be
    • Android
      • The first complete, open and free mobile platform
      • Release in November 2007
      • Initially rumored to be some kind of Gphone
      • An Open Handset Alliance Project
  • 5. Open Handset Alliance Android: How it came to be
    • Open Handset Alliance
      • Group of more that 30 technology and mobile companies developing Android
      • Goal
        • Accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience
  • 6. Open Handset Alliance Android: How it came to be
    • Members of the Alliance
    Mobile Operators Semiconductor Companies Handset Manufacturers Software Companies Commercialization Companies
  • 7. Open Android is...
    • Allows access to core mobile device functionality through standard API calls
      • Example
        • Application can call core functionality such as making calls, sending text messages, using camera...
        • Developers can create richer and more cohesive experiences for users
    • Since it's open source, it can be liberally extended as new technologies emerge
  • 8. Advantages of an Open Platform Android is...Open
    • Consumers
      • Cheaper mobile devices
      • More innovative mobile devices and services
        • Easier-to-use user interfaces
        • Rich portfolio of applications
  • 9. Advantages of an Open Platform Android is...Open
    • Mobile Operators
      • Lower overall cost of handsets
      • They will have complete flexibility to customize and differentiate their product lines
      • More rapid innovation in handsets and services
  • 10. Advantages of an Open Platform Android is...Open
    • Handset manufacturers
      • Lower software BOM (bill of material) costs
      • Faster time-to-market for handset
      • Greater flexibility to customized and differentiate product offerings
  • 11. Advantages of an Open Platform Android is...Open
    • Semiconductor companies
      • As cellphone-on-a-chip becomes a reality
        • Semiconductor companies will need to access more sophisticated software that take advantage of the enhanced features (3D graphics, signal processor cores, dedicated blocks of multimedia acceleration etc)‏
      • An open platform will give support to these new peripherals in the platform and will allow semiconductor companies to give 3 rd party developers access to these enhanced features in a timely manner
  • 12. Advantages of an Open Platform Android is...Open
    • Software companies
      • Allow simplified integration of software components into a complete mobile platform
      • More income for them
        • Handset manufacturers will invest in high value and differentiated software components since there are lower acquisition costs in the mobile platform
  • 13. Advantages of an Open Platform Android is...Open
    • Developers
      • Able to innovate rapidly because they will have comprehensive API access to handset capabilities that are web-ready
      • Increase productivity
        • Comprehensive and easy-to-use developer tools
      • Deeper understanding of the underlying platform will lead them to better optimize their applications
      • Distribution and commercialization of mobile applications will be less expensive and easier
  • 14. All Applications are Equal In Android...
    • Android does not differentiate between the phone's basic and third party applications
      • All applications have equal access to the phone's capabilities
      • Example:
        • The dialer and home screen can be replaced
  • 15. Breaking down boundaries Android is...
    • Information from the web can be combined with data on the phone
      • Example:
        • Contacts, calendar or geographic location
  • 16. Fast and Easy Development Android allows...
    • SDK (Software development kit) includes
      • True device emulator and advanced debugging tools
      • Useful libraries and tools
        • Example
          • Obtain location of the device
          • Allow devices to communicate with one another
  • 17. No REAL Android Phones Yet As of the time these slides are made: April 29, 2008 http://www.google-phone.com/wp-content/uploads/2007/12/android_htc_prototype_live_image_1.jpg Android HTC Prototype Android Emulator Willcom Android demo reference board http://www.google-phone.com/wp-content/uploads/2007/12/willcom_core_android_module_2.jpg
  • 18. Android Features
    • Application framework
      • enable reuse and replacement of components
    • Dalvik virtual machine
      • optimized for mobile devices
    • Integrated browser
      • based on the open source WebKit engine
    • Optimized graphics
      • powered by a custom 2D graphics library
      • 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional)
  • 19. Android Features
    • SQLite
      • For structured data storage
    • Media support for common audio, video, and still image formats
      • MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF
    • GSM Telephony (hardware dependent)
    • Bluetooth, EDGE, 3G, and WiFi (hardware dependent)
    • Camera, GPS, compass, and accelerometer (hardware dependent)‏
  • 20. Android Features
    • Rich development environment which includes
      • device emulator
      • tools for debugging
      • memory and performance profiling
      • a plugin for the Eclipse IDE
  • 21. Android Architecture Major components of the Android OS Java C/C++
  • 22. Linux Kernel Android Architecture
    • Linux Kernel 2.6
    • Abstraction layer between the hardware and software stack
    • Why Linux?
      • Proven driver model and has existing drivers
      • Has memory management, security management, networking, core operating system infrastructure, etc.
      • Robust and already has been proven over time
  • 23. Libraries Android Architecture
    • Written in C and C++
    • The core power of the Android platform
  • 24. Libraries Android Architecture Responsible for composing different drawing surfaces (ex: diff. windows/applications/process all drawing at the same time) to the screen
    • Make up the core of the graphics library.
    • OpenGL (3D graphics engine)‏
    • SGL (2D graphics engine)
    • Can combine 3D and 2D graphics in the same application
  • 25. Libraries Android Architecture Provided by PacketVideo OpenCore Support for: MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG Bitmap and Vector font rendering Secure Sockets Layer Protocol for transmitting private documents
  • 26. Libraries Android Architecture A powerful lightweight relational database engine An open source browser engine. Used as the core of the browser which is the same browser powering Safari.
  • 27. Android Runtime Android Architecture
    • Main Component: Dalvik Virtual Machine
      • Optimized for running in an embedded environment (limited memory, CPU,battery)‏
      • Runs .dex files (bytecodes)‏
    .class .jar files Optimized! More efficient! Converted at build time
  • 28. Android Runtime Android Architecture
    • Core Library
      • Contains all the collection classes, utilities, IO, etc.
  • 29. Application Framework Android Architecture
    • Toolkit that all applications (core, by Google, you:)...)‏
    • * XMPP: Extensible Messaging and Presence Protocol
      • An open XML technology for real-time communication (instant messaging, shared editing, etc)‏
    All written using the Java Programming Language
  • 30. Application Framework Android Architecture Manages the lifecycle of applications and provides a common navigation backstack Keeps track what applications are installed in device Manages Windows Contains APIs used to build the phone application
  • 31. Application Framework Android Architecture Allows applications to share data with other applications (ex: contact info is available to others)‏ Used to store localized strings, bitmaps, layout file descriptions, etc. Contains all building blocks of the UI Provides support for location-based services* * Support depends on the underlying device
  • 32. Application Framework Android Architecture Handles notification of users about events that happen Examples of notification forms: persistent icon in the status bar, vibrating, playing sound, etc.)‏ Allows applications to communicate between devices through GtalkService . GtalkService maintains a persistent socket connection, therefore the response time is faster than SMS.
  • 33. Applications Android Architecture
    • Core Applications
      • Email client
      • SMS program
      • Calendar
      • Maps
      • Browser
      • Contacts
      • etc
    All applications are written using the Java Programming Language
  • 34. Anatomy of an Android Application
    • Application Building Blocks
      • Activity
      • Intent Receiver
      • Service
      • Content Provider
  • 35. Activity Anatomy of an Android Application
    • Activity
      • UI typically corresponding to one screen
      • Move through screens by starting other activities
      • Example
        • Email application has 3 major activity
          • List your mail
          • Chosen individual mail message
          • Compose screen
  • 36. Intent Receiver Anatomy of an Android Application
    • Intent Receiver
      • Responds to notifications or status changes
      • Can wake up your process
      • Doesn't run unless triggered by an external event
      • Example
        • Only run an application when connected to the network
  • 37. Service Anatomy of an Android Application
    • Service
      • Faceless task that runs in the background
      • Example
        • Music player
          • Keeps playing even though you are navigating to other parts
  • 38. Content Provider Anatomy of an Android Application
    • Content Provider
      • Enables applications to share data
      • Example
        • Any application can access the contacts database
  • 39. Hello Android A Peek at an Android App
  • 40. Hello Android A Peek at an Android App
  • 41. Hello Android A Peek at an Android App
  • 42. Hello Android A Peek at an Android App
  • 43. Application Lifecycle
    • Every application runs its own process
      • Benefits: security, protected memory, applications using CPU intensively won't block other activities
  • 44. Application Lifecycle
    • Every application runs its own process
      • Benefits: security, protected memory, applications using CPU intensively won't block other activities
    • Processes are started and stopped as needed to run an application's components
  • 45. Application Lifecycle
    • Every application runs its own process
      • Benefits: security, protected memory, applications using CPU intensively won't block other activities
    • Processes are started and stopped as needed to run an application's components
    • Processes may be killed to reclaim resources
    It's my problem to launch/ kill processes, manage resources, saving states, etc.
  • 46. Interesting APIs
  • 47. Will Android succeed? Future of Android Charles Golvin While I believe the effort by the Open Handset Alliance will have a significant impact on the market, I think it will build slowly over time. Even if there is a tidal wave of new devices using the Android platform, they will still represent a relatively small portion of the overall market. http://news.zdnet.co.uk/communications/0,1000000085,39290579,00.htm http://venturebeat.com/2008/01/04/roundup-more-google-departures-the-future-of-android-and-more/ Steve Balmer (CEO Microsoft)‏ Google's efforts are still on paper right now it's hard to do a very clear comparison. In terms of openness and broad support, we've done very well with Windows mobile...etc. We'll have to see what Google does. http://youtube.com/watch?v=zwIUEnXctuA
  • 48. Will Android succeed? Future of Android Steve Balmer(Microsoft) & Nigel Clifford(Symbian) on Android http:// youtube.com/watch?v = zwIUEnXctuA
  • 49. Will Android succeed? Future of Android Cranky Geeks http:// www.youtube.com/watch?v =SOgRMi4ad3c&NR=1
  • 50. Will Android succeed? Future of Android
      • I guess we'll just have to wait and see...
      • :)‏
  • 51. Vielen Dank für die Aufmerksamkeit!
  • 52. References
    • General Information
      • http://code.google.com/android/
      • http://www.openhandsetalliance.com/
      • http://www.intomobile.com/2007/08/27/google-gphone-confirmed-as-low-cost-sub-100-device.html
      • http://www.webpronews.com/blogtalk/2006/12/18/apples-iphone-then-googles-gphone
      • http://www.xmpp.org/
      • http://www.youtube.com/ (Androidology series)‏
    • Images
      • http://www.phonemag.com/blog/wp-content/uploads/2008/02/android_feb08_sdk_one.jpg
      • http://www.google-phone.com/wp-content/uploads/2007/12/android_htc_prototype_live_image_1.jpg
      • http://www.google-phone.com/wp-content/uploads/2007/12/willcom_core_android_module_2.jpg
      • http://www.openhandsetalliance.com/
      • http://code.google.com/android/