0
Android Presentation <ul><li>By  </li></ul><ul><li>Manish K Chauhan </li></ul><ul><li>[email_address] </li></ul><ul><li>Sa...
Agenda <ul><li>Mobile Application Development (MAD) </li></ul><ul><li>Intro to Android platform </li></ul><ul><li>Platform...
Few reasons to go MAD… <ul><li>Smart Phones </li></ul><ul><ul><li>Internet access anywhere </li></ul></ul><ul><ul><li>Soci...
Introduction to Android <ul><li>Open software platform for mobile development </li></ul><ul><li>A complete stack – OS, Mid...
 
Linux Kernel <ul><li>Works as a HAL </li></ul><ul><li>Device drivers </li></ul><ul><li>Memory management </li></ul><ul><li...
Libraries <ul><li>C/C++ libraries </li></ul><ul><li>Interface through Java </li></ul><ul><li>Surface manager – Handling UI...
Android Runtime <ul><li>Dalvik VM </li></ul><ul><ul><li>Dex files </li></ul></ul><ul><ul><li>Compact and efficient than cl...
Application Framework <ul><li>API interface </li></ul><ul><li>Activity manager – manages application life cycle. </li></ul>
Applications <ul><li>Built in and user apps </li></ul><ul><li>Can replace built in apps </li></ul>
Agenda <ul><li>Mobile Application Development (MAD) </li></ul><ul><li>Intro to Android platform </li></ul><ul><li>Platform...
Application Building Blocks <ul><li>Activity </li></ul><ul><li>IntentReceiver </li></ul><ul><li>Service </li></ul><ul><li>...
Activities <ul><li>Represents the presentation layer of an Android application, e.g. a screen which the user sees. An Andr...
IntentReceivers <ul><li>Components that respond to broadcast ‘Intents’ </li></ul><ul><li>Way to respond to external notifi...
Intents <ul><li>Think of Intents as a verb and object; a description of what you want done </li></ul><ul><ul><li>E.g. VIEW...
Intents GMail Contacts Home Blogger Chat Client component makes a request for a specific action “ Pick photo” Picasa Syste...
Services <ul><li>Faceless components that run in the background </li></ul><ul><ul><li>E.g. music player, network download ...
ContentProviders <ul><li>Enables sharing of data across applications </li></ul><ul><ul><li>E.g. address book, photo galler...
Agenda <ul><li>Mobile Application Development (MAD) </li></ul><ul><li>Intro to Android platform </li></ul><ul><li>Platform...
Development Tools <ul><li>Eclipse </li></ul><ul><li>Android SDK 1.0-2.0 </li></ul><ul><ul><li>developer.android.com </li><...
The Emulator <ul><li>QEMU-based ARM emulator </li></ul><ul><li>Runs the same image as the device </li></ul><ul><li>Limitat...
Devices
Hello World <ul><li>http://developer.android.com/guide/tutorials/hello-world.html </li></ul><ul><li>Generating UIs </li></...
Application Lifecycle <ul><li>Application run in their own processes (VM, PID) </li></ul><ul><li>Processes are started and...
 
Location Manager
XMPP Services <ul><li>Allows any app to send device-to-device messages to other android users </li></ul><ul><li>Data Messa...
Notification Manager
Notification Manager <ul><li>How background app interact with users </li></ul><ul><li>Consistent notification presentation...
Views
Views
Location Manager
References <ul><li>http://developer.android.com/ </li></ul>
Upcoming SlideShare
Loading in...5
×

Android ppt

41,955

Published on

This ppt give you the basic details for Android functionality and architecture.

Published in: Technology, Education
3 Comments
12 Likes
Statistics
Notes
No Downloads
Views
Total Views
41,955
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
2,465
Comments
3
Likes
12
Embeds 0
No embeds

No notes for slide

Transcript of "Android ppt"

  1. 1. Android Presentation <ul><li>By </li></ul><ul><li>Manish K Chauhan </li></ul><ul><li>[email_address] </li></ul><ul><li>Samsung India </li></ul>
  2. 2. Agenda <ul><li>Mobile Application Development (MAD) </li></ul><ul><li>Intro to Android platform </li></ul><ul><li>Platform architecture </li></ul><ul><li>Application building blocks </li></ul><ul><li>Development tools </li></ul><ul><li>Hello Android Live Demo </li></ul>
  3. 3. Few reasons to go MAD… <ul><li>Smart Phones </li></ul><ul><ul><li>Internet access anywhere </li></ul></ul><ul><ul><li>Social networking </li></ul></ul><ul><li>Millions of mobile users </li></ul><ul><li>Open standards </li></ul>
  4. 4. Introduction to Android <ul><li>Open software platform for mobile development </li></ul><ul><li>A complete stack – OS, Middleware, Applications </li></ul><ul><li>An Open Handset Alliance (OHA) project </li></ul><ul><li>Powered by Linux operating system </li></ul><ul><li>Fast application development in Java </li></ul><ul><li>Open source under the Apache 2 license </li></ul>
  5. 6. Linux Kernel <ul><li>Works as a HAL </li></ul><ul><li>Device drivers </li></ul><ul><li>Memory management </li></ul><ul><li>Process management </li></ul><ul><li>Networking </li></ul>
  6. 7. Libraries <ul><li>C/C++ libraries </li></ul><ul><li>Interface through Java </li></ul><ul><li>Surface manager – Handling UI Windows </li></ul><ul><li>2D and 3D graphics </li></ul><ul><li>Media codecs, SQLite, Browser engine </li></ul>
  7. 8. Android Runtime <ul><li>Dalvik VM </li></ul><ul><ul><li>Dex files </li></ul></ul><ul><ul><li>Compact and efficient than class files </li></ul></ul><ul><ul><li>Limited memory and battery power </li></ul></ul><ul><li>Core Libraries </li></ul><ul><ul><li>Java 5 Std edition </li></ul></ul><ul><ul><li>Collections, I/O etc… </li></ul></ul>
  8. 9. Application Framework <ul><li>API interface </li></ul><ul><li>Activity manager – manages application life cycle. </li></ul>
  9. 10. Applications <ul><li>Built in and user apps </li></ul><ul><li>Can replace built in apps </li></ul>
  10. 11. Agenda <ul><li>Mobile Application Development (MAD) </li></ul><ul><li>Intro to Android platform </li></ul><ul><li>Platform architecture </li></ul><ul><li>Application building blocks </li></ul><ul><li>Development tools </li></ul><ul><li>Hello Android </li></ul>
  11. 12. Application Building Blocks <ul><li>Activity </li></ul><ul><li>IntentReceiver </li></ul><ul><li>Service </li></ul><ul><li>ContentProvider </li></ul>
  12. 13. Activities <ul><li>Represents the presentation layer of an Android application, e.g. a screen which the user sees. An Android application can have several activities and it can be switched between them during runtime of the application. But, they can: </li></ul><ul><ul><li>Be faceless </li></ul></ul><ul><ul><li>Be in a floating window </li></ul></ul><ul><ul><li>Return a value </li></ul></ul>
  13. 14. IntentReceivers <ul><li>Components that respond to broadcast ‘Intents’ </li></ul><ul><li>Way to respond to external notification or alarms </li></ul><ul><li>Apps can invent and broadcast their own Intent </li></ul>
  14. 15. Intents <ul><li>Think of Intents as a verb and object; a description of what you want done </li></ul><ul><ul><li>E.g. VIEW, CALL, PLAY etc.. </li></ul></ul><ul><li>System matches Intent with Activity that can best provide the service </li></ul><ul><li>Activities and Intent Receivers describe what Intents they can service </li></ul>
  15. 16. Intents GMail Contacts Home Blogger Chat Client component makes a request for a specific action “ Pick photo” Picasa System picks best component for that action New components can use existing functionality Blogger Photo Gallery
  16. 17. Services <ul><li>Faceless components that run in the background </li></ul><ul><ul><li>E.g. music player, network download etc… </li></ul></ul>
  17. 18. ContentProviders <ul><li>Enables sharing of data across applications </li></ul><ul><ul><li>E.g. address book, photo gallery </li></ul></ul><ul><li>Provides uniform APIs for: </li></ul><ul><ul><li>querying </li></ul></ul><ul><ul><li>delete, update and insert. </li></ul></ul><ul><li>Content is represented by URI and MIME type </li></ul>
  18. 19. Agenda <ul><li>Mobile Application Development (MAD) </li></ul><ul><li>Intro to Android platform </li></ul><ul><li>Platform architecture </li></ul><ul><li>Application building blocks </li></ul><ul><li>Development tools </li></ul><ul><li>Hello Android </li></ul>
  19. 20. Development Tools <ul><li>Eclipse </li></ul><ul><li>Android SDK 1.0-2.0 </li></ul><ul><ul><li>developer.android.com </li></ul></ul>
  20. 21. The Emulator <ul><li>QEMU-based ARM emulator </li></ul><ul><li>Runs the same image as the device </li></ul><ul><li>Limitations: </li></ul><ul><ul><li>No Camera support </li></ul></ul><ul><ul><li>http://en.wikipedia.org/wiki/QEMU </li></ul></ul>
  21. 22. Devices
  22. 23. Hello World <ul><li>http://developer.android.com/guide/tutorials/hello-world.html </li></ul><ul><li>Generating UIs </li></ul><ul><ul><li>Views – building blocks </li></ul></ul><ul><ul><li>E.g. TextView, EditText, Button </li></ul></ul><ul><ul><li>Placed into Layouts </li></ul></ul><ul><ul><li>E.g. LinearLayout, TableLayout, AbsoluteLayout </li></ul></ul>
  23. 24. Application Lifecycle <ul><li>Application run in their own processes (VM, PID) </li></ul><ul><li>Processes are started and stopped as needed to run an application's components </li></ul><ul><li>Processes may be killed to reclaim resources </li></ul>
  24. 26. Location Manager
  25. 27. XMPP Services <ul><li>Allows any app to send device-to-device messages to other android users </li></ul><ul><li>Data Messages are Intents with name/value pairs </li></ul><ul><li>Works with any gmail account… </li></ul><ul><li>Can also build servers to deliver server-to-device messages </li></ul>
  26. 28. Notification Manager
  27. 29. Notification Manager <ul><li>How background app interact with users </li></ul><ul><li>Consistent notification presentation </li></ul>
  28. 30. Views
  29. 31. Views
  30. 32. Location Manager
  31. 33. References <ul><li>http://developer.android.com/ </li></ul>
  1. A particular slide catching your eye?

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

×