An Introduction to Android




   Jason Chen
Developer Advocate
 Google I/O 2008
•Background
•What is Android?
•Latest News
Internet and Mobile Phone Users, Worldwide
4,000,000,000




3,000,000,000




2,000,000,000




1,000,000,000




       ...
Mobile Operators
Handset Manufacturers



Mobile Operators
Handset Manufacturers


                                           Software
Mobile Operators
Handset Manufacturers


                                           Software
Mobile Operators




      Semiconductor
Handset Manufacturers


                                           Software
Mobile Operators




      Semiconductor
     ...
•Background
•What is Android?
•Latest News
Linux Kernel
 Display     Camera Driver      Bluetooth     Flash Memory   Binder (IPC)
 Driver                           D...
Libraries
Surface Manager       Media            SQLite
                   Framework

 OpenGL | ES        FreeType        ...
Libraries                            Android Runtime
Surface Manager       Media            SQLite                  Core L...
Application Framework

Activity Manager     Window            Content         View                       Notification
     ...
Applications

    Home             Contacts           Phone         Browser                         ...

                 ...
Application Building Blocks
                  UI component typically corresponding to
    Activity
                  one s...
Developer Toolchain
Emulator

           • QEMU-based ARM emulator
             runs same system image as
             a device

           • ...
Eclipse Plugin
Project template
Debugging

 Call stack



                                Examine variables




 Breakpoints, single stepping
What does open mean?




                Photo by: http://flickr.com/photos/virtualsugar/316200555/
Industry
•Software stack open-
           sourced under Apache 2.0
           license
Industry   •Source available after first
     ...
Industry
Industry   Users
•Users have control of
           their experience
Industry   •They control what gets     Users
           installed
     ...
Industry   Users
Developers



Industry                Users
Developers

           •Don’t need permission to
           ship an application
           •No hidden or privileged
Indust...
Integrate
Integrate
Integrate
Integrate   Extend
Integrate   Extend
Replace
Replace
Replace
Replace
Replace
What about security?
What does this mean
 for developers?
•Background
•What is Android?
•Latest News
Latest News
•   5 Nov 2007: Android announced

•   12 Nov 2007: early look of the SDK released

•   14 Dec 2007: bug-fix SD...
Android Developer Challenge



•   Goal: help developers turn great ideas into great code

•   Challenge I & II each have ...
Q &A
Google Io Introduction To Android
Google Io Introduction To Android
Google Io Introduction To Android
Google Io Introduction To Android
Google Io Introduction To Android
Upcoming SlideShare
Loading in...5
×

Google Io Introduction To Android

1,548
-1

Published on

Introduction to Android

Published in: Technology, Business
2 Comments
6 Likes
Statistics
Notes
No Downloads
Views
Total Views
1,548
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
187
Comments
2
Likes
6
Embeds 0
No embeds

No notes for slide

Google Io Introduction To Android

  1. 1. An Introduction to Android Jason Chen Developer Advocate Google I/O 2008
  2. 2. •Background •What is Android? •Latest News
  3. 3. Internet and Mobile Phone Users, Worldwide 4,000,000,000 3,000,000,000 2,000,000,000 1,000,000,000 0 2000 2001 2002 2003 2004 2005 2006 2007 Internet users (PC-based) Source: International Telecommunication Union Mobile phone users
  4. 4. Mobile Operators
  5. 5. Handset Manufacturers Mobile Operators
  6. 6. Handset Manufacturers Software Mobile Operators
  7. 7. Handset Manufacturers Software Mobile Operators Semiconductor
  8. 8. Handset Manufacturers Software Mobile Operators Semiconductor Commercialization
  9. 9. •Background •What is Android? •Latest News
  10. 10. Linux Kernel Display Camera Driver Bluetooth Flash Memory Binder (IPC) Driver Driver Driver Driver USB Driver Keypad Driver WiFi Driver Audio Power Drivers Management
  11. 11. Libraries Surface Manager Media SQLite Framework OpenGL | ES FreeType WebKit SGL SSL libc Linux Kernel Display Camera Driver Bluetooth Flash Memory Binder (IPC) Driver Driver Driver Driver USB Driver Keypad Driver WiFi Driver Audio Power Drivers Management
  12. 12. Libraries Android Runtime Surface Manager Media SQLite Core Libraries Framework OpenGL | ES FreeType WebKit Dalvik Virtual Machine SGL SSL libc Linux Kernel Display Camera Driver Bluetooth Flash Memory Binder (IPC) Driver Driver Driver Driver USB Driver Keypad Driver WiFi Driver Audio Power Drivers Management
  13. 13. Application Framework Activity Manager Window Content View Notification Manager Providers System Manager Package Manager Telephony Resource Location GTalk Service Manager Manager Manager Libraries Android Runtime Surface Manager Media SQLite Core Libraries Framework OpenGL | ES FreeType WebKit Dalvik Virtual Machine SGL SSL libc Linux Kernel Display Camera Driver Bluetooth Flash Memory Binder (IPC) Driver Driver Driver Driver USB Driver Keypad Driver WiFi Driver Audio Power Drivers Management
  14. 14. Applications Home Contacts Phone Browser ... Application Framework Activity Manager Window Content View Notification Manager Providers System Manager Package Manager Telephony Resource Location GTalk Service Manager Manager Manager Libraries Android Runtime Surface Manager Media SQLite Core Libraries Framework OpenGL | ES FreeType WebKit Dalvik Virtual Machine SGL SSL libc Linux Kernel Display Camera Driver Bluetooth Flash Memory Binder (IPC) Driver Driver Driver Driver USB Driver Keypad Driver WiFi Driver Audio Power Drivers Management
  15. 15. Application Building Blocks UI component typically corresponding to Activity one screen. Set and respond to notifications or status IntentReceiver changes. Can wake up your app. Service Faceless task that runs in the background. ContentProvider Enable applications to share data.
  16. 16. Developer Toolchain
  17. 17. Emulator • QEMU-based ARM emulator runs same system image as a device • Use same toolchain to work with devices or emulator
  18. 18. Eclipse Plugin Project template
  19. 19. Debugging Call stack Examine variables Breakpoints, single stepping
  20. 20. What does open mean? Photo by: http://flickr.com/photos/virtualsugar/316200555/
  21. 21. Industry
  22. 22. •Software stack open- sourced under Apache 2.0 license Industry •Source available after first handsets ship •Anyone will be able to build a system image
  23. 23. Industry
  24. 24. Industry Users
  25. 25. •Users have control of their experience Industry •They control what gets Users installed •They choose the defaults
  26. 26. Industry Users
  27. 27. Developers Industry Users
  28. 28. Developers •Don’t need permission to ship an application •No hidden or privileged Industry framework APIs Users •Can integrate, extend, and replace existing components
  29. 29. Integrate
  30. 30. Integrate
  31. 31. Integrate
  32. 32. Integrate Extend
  33. 33. Integrate Extend
  34. 34. Replace
  35. 35. Replace
  36. 36. Replace
  37. 37. Replace
  38. 38. Replace
  39. 39. What about security?
  40. 40. What does this mean for developers?
  41. 41. •Background •What is Android? •Latest News
  42. 42. Latest News • 5 Nov 2007: Android announced • 12 Nov 2007: early look of the SDK released • 14 Dec 2007: bug-fix SDK released • 3 Jan 2008: Android Developer Challenge I starts accepting submissions • 13 Feb 2008: m5-rc15 SDK released • 14 Apr 2008: 1788 total submissions for Challenge I • 12 May 2008: Top 50 Application in Challenge I announced
  43. 43. Android Developer Challenge • Goal: help developers turn great ideas into great code • Challenge I & II each have a $5MM USD purse • Challenge II will begin after devices go on sale
  44. 44. Q &A
  1. A particular slide catching your eye?

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

×