Your SlideShare is downloading. ×
Android development - the basics, FI MUNI, 2012
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

Android development - the basics, FI MUNI, 2012


Published on

Published in: Technology

  • Be the first to comment

  • Be the first to like this

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. Android Development - the basics Tomáš Kypta @TomasKypta
  • 2. Outline● Android platform● Android ecosystem● Android SDK and development tools● Hello World● Building blocks & the manifest file● Activities, widgets, intents● Dialog, toast
  • 3. Android platform● Linux-based operating system● open-source● originally phone OS● tablet (since Honeycomb)● Google TV● hundreds of devices
  • 4. History● 2003, Android inc.● 2005 acquired by Google● 2008 first Android phone – T-Mobile G1● since then rapid development of the platform
  • 5. Android ecosystem● the worlds most popular mobile platform● over 850 000 new devices activated each day● total number of devices ~ 300 million● (● more than 450 000 applications● ~ 70% free apps
  • 6. Problems● fragmentation● manufacturer/carrier enhancements● updates & support● openness – low quality apps● malware (users)
  • 7. Sources●●●●●●
  • 8. Development● programming in “Java”● native apps possible (C++)● development tools platform friendly● Windows, Linux, Mac OS X● IDE support – ADT plugin for Eclipse, Netbeans, IntelliJ IDEA, ...
  • 9. Android SDK● android – Android SDK and AVD Manager● adb – Android Debug Bridge● ddms – Dalvik Debug Monitor● emulator● hierarchyviewer● ProGuard● Traceview● docs
  • 10. Libraries● compatibility libraries● licensing library● AdMob● Google Analytics, Flurry● C2DM
  • 11. Android internals
  • 12. Hello World
  • 13. Android Building Blocks● Activity● Service● Content provider● Broadcast receiver● AndroidManifest.xml
  • 14. Activity● screen with user interface● the only visual component● examples: – list of emails – email detail – email composition
  • 15. Service● runs in background● long-running tasks● examples: – music playback service – download service – sync service
  • 16. Content Provider● manages and shares application data● data storage doesnt matter – database, web, filesystem● apps can query and modify data through content provider● read/write permissions can be defined● examples: – all system databases – contacts – SMS
  • 17. Broadcast Receiver● responds to broadcasts● broadcasts are system wide● can be registered statically or dynamically● system or custom messages● examples: – incoming SMS, incoming call – screen turned off – low baterry – removed SD card
  • 18. AndroidManifest.xml● defines what parts the app have● defines which endpoints are exposed● minimum API level● permissions● declare hardware and software features● required configuration
  • 19. Intent● asynchronous message● binds components together (all of them except ContentProvider)● starting activities● starting services and binding to services● sending broadcasts
  • 20. User Interface● defined by hierarchy of views● layouts = containers – LinearLayout – RelativeLayout – FrameLayout● widgets = UI objects – Button, TextView, EditText – WebView
  • 21. Activity Lifecycle● activities managed in a stack● activity can be in different states during its lifecycle: – foreground – visible – stopped – killed
  • 22. Intent & Activity● starting activity explicitly● starting activity implicitly● starting activity for result
  • 23. List Widgets● displays a list of items (some view) – ListView, Spinner, GridView, Gallery● use adapter to bind list to data
  • 24. Dialogs and Toasts● Dialog – displays modal information – standard dialogs – custom dialogs● Toast – non-modal information – doesnt have user focus
  • 25. THE END