Your SlideShare is downloading. ×
Download It
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Download It

2,338

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,338
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
194
Comments
0
Likes
1
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. Mobile Application Development with ANDROID Tejas Lagvankar UMBC 29 April 2009
  • 2. Agenda
    • Mobile Application Development (MAD)
    • Intro to Android platform
    • Platform architecture
    • Application building blocks
    • Development tools
    • Hello Android
    • SAM
    • Resources
  • 3. Few reasons to go MAD…
    • Smart Phones
      • Internet access anywhere
      • Social networking
    • Millions of mobile users
    • Open standards
  • 4. Introduction to Android
    • Open software platform for mobile development
    • A complete stack – OS, Middleware, Applications
    • An Open Handset Alliance (OHA) project
    • Powered by Linux operating system
    • Fast application development in Java
    • Open source under the Apache 2 license
  • 5.  
  • 6. Linux Kernel
    • Works as a HAL
    • Device drivers
    • Memory management
    • Process management
    • Networking
  • 7. Libraries
    • C/C++ libraries
    • Interface through Java
    • Surface manager – Handling UI Windows
    • 2D and 3D graphics
    • Media codecs, SQLite, Browser engine
  • 8. Android Runtime
    • Dalvik VM
      • Dex files
      • Compact and efficient than class files
      • Limited memory and battery power
    • Core Libraries
      • Java 5 Std edition
      • Collections, I/O etc…
  • 9. Application Framework
    • API interface
    • Activity manager – manages application life cycle.
  • 10. Applications
    • Built in and user apps
    • Can replace built in apps
  • 11. Agenda
    • Mobile Application Development (MAD)
    • Intro to Android platform
    • Platform architecture
    • Application building blocks
    • Development tools
    • Hello Android
    • SAM
    • Resources
  • 12. Application Building Blocks
    • Activity
    • IntentReceiver
    • Service
    • ContentProvider
  • 13. Activities
    • Typically correspond to one UI screen
    • But, they can:
      • Be faceless
      • Be in a floating window
      • Return a value
  • 14. IntentReceivers
    • Components that respond to broadcast ‘Intents’
    • Way to respond to external notification or alarms
    • Apps can invent and broadcast their own Intent
  • 15. 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 IntentReceivers describe what Intents they can service
  • 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
  • 17. Services
    • Faceless components that run in the background
      • E.g. music player, network download etc…
  • 18. ContentProviders
    • Enables sharing of data across applications
      • E.g. address book, photo gallery
    • Provides uniform APIs for:
      • querying
      • delete, update and insert.
    • Content is represented by URI and MIME type
  • 19. Agenda
    • Mobile Application Development (MAD)
    • Intro to Android platform
    • Platform architecture
    • Application building blocks
    • Development tools
    • Hello Android
    • SAM
    • Resources
  • 20. Development Tools
    • Eclipse
    • Android SDK
      • developer.android.com
  • 21. The Emulator
    • QEMU-based ARM emulator
    • Runs the same image as the device
    • Limitations:
      • No Camera support
  • 22. Devices
  • 23. Hello World
    • Generating UIs
      • Views – building blocks
      • E.g. TextView, EditText, Button
      • Placed into Layouts
      • E.g. LinearLayout, TableLayout, AbsoluteLayout
  • 24. SAM Demo
  • 25. Interesting things to do
    • Android is open source
    • Opportunities for researchers
    • Get the source, compile and update the device image
  • 26. References
    • http://developer.android.com
    • http://sites.google.com/site/io

×