Your SlideShare is downloading. ×
Mobile Application Development with ANDROID
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

Mobile Application Development with ANDROID


Published on

This presentation contains; Mobile Application Development (MAD), Platform architecture, Application building blocks, Development tools, Hello Android and Resources...

This presentation contains; Mobile Application Development (MAD), Platform architecture, Application building blocks, Development tools, Hello Android and Resources...

Published in: Education, Technology

1 Like
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Mobile Application Development with ANDROID
  • 2. Agenda• Mobile Application Development (MAD)• Platform architecture• Application building blocks• Development tools• Hello Android• Resources
  • 3. Few reasons to go MAD…• Smart Phones – Internet access anywhere – Social networking• Millions of mobile users• Open standards
  • 4. Linux Kernel• Works as a HAL• Device drivers• Memory management• Process management• Networking
  • 5. Libraries• C/C++ libraries• Interface through Java• Surface manager – Handling UI Windows• 2D and 3D graphics• Media codecs, SQLite, Browser engine
  • 6. 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…
  • 7. Application Framework• API interface• Activity manager – manages application life cycle.
  • 8. Applications• Built in and user apps• Can replace built in apps
  • 9. Application Building Blocks• Activity• IntentReceiver• Service• ContentProvider
  • 10. Activities• Typically correspond to one UI screen• But, they can: – Be faceless – Be in a floating window – Return a value
  • 11. Intent Receivers• Components that respond to broadcast ‘Intents’• Way to respond to external notification or alarms• Apps can invent and broadcast their own Intent
  • 12. 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
  • 13. Services• Faceless components that run in the background – E.g. music player, network download etc…
  • 14. Content Providers• 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
  • 15. Development Tools• Eclipse• Android SDK
  • 16. The Emulator • QEMU-based ARM emulator • Runs the same image as the device • Limitations: – No Camera support
  • 17. Types ofAndroid Devices 18
  • 18. HTC Droid Incredible Motorola Droid 19
  • 19. Galaxy Tablet • Retail: $250 with 2 year contract • 7-inch 1024 x 600-pixel LCD screen • 0.84 pounds • 7.48 x 4.74 x 0.47 inches • 1 GHz Coretx A8 processor • 512 MB RAM • 16 or 32 GB internal storage • Front and rear cameras 20
  • 20. Android-Powered Microwave By Touch Revolution – at CES 2010 google 21
  • 21. Google Nexus One • Retail: $530 • Not tied to single provider • 3.7-inch 800 x 400-pixel OLED screen • No support for multitouch • 512 MB of built-in flash memory • Preloaded 4 GB SD card • Ubiquitous voice recognition • 5-megapixel camera with zoom and flash • Navigation system using Google Maps and GPS 22
  • 22. Hello World• Generating UIs – Views – building blocks – E.g. TextView, EditText, Button – Placed into Layouts – E.g. LinearLayout, TableLayout, AbsoluteLayout
  • 23. Producing an Android AppJava javac Bytecode code dx .class exe classes.dex aapt Byte code <xml> Other .class files AndroidManifest.xm .apk l <str > Resources 24
  • 24. Hello Android Tutorial 25 world.html
  • 25. Important Files• src/ – Activity which is started when app executes• res/layout/main.xml – Defines & lays out widgets for the activity• res/values/strings.xml – String constants used by app• gen/ (Don’t touch!) – Auto-generated file with identifiers from main.xml, strings.xml, and elsewhere• AndroidManifest.xml – Declares all the app’s components – Names libraries app needs to be linked against – Identifies permissions the app expects to be granted 26
  • 26. src/• Activity which is started when app executes 27
  • 27. res/layout/main.xml• Declares layouts & widgets for the activity 28 Tree from:
  • 28. Interesting things to do• Android is open source• Opportunities for researchers• Get the source, compile and update the device image