Android development orientation for starters v2


Published on

This slides contains overview of android development for beginners.

I created this for the students of CCA Cebu

Special thanks to Larry Walters's presentation from which I also refer.

Published in: Technology, Education
1 Comment
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Android development orientation for starters v2

  1. 1. AndroidDevelopmentOrientation forStartersJoemarie Comeros Amparo
  2. 2. What is Android?Android is an open mobile phone platform that was developed by Google and later by Open Handset Alliance. Google defines Android as a "software stack" for mobile phones.Software stack is made up of operating system(the platform on which everything runs), the middleware (the programming that allows applications to talk to a network and to one another) and the applications (the actual programs that phone will run)
  3. 3. Brief HistoryJuly 2005 - Google Inc. bought from Danger InOpen Handset Alliance was formed headed by Google which is composed of companies like Intel, T-Mobile, Spring Nextel and more.In 2008, Android became available as an open source and ASOP(Android Open Source Project) is responsible for maintaining and development of android.February 2009, the first android version was released, Android 1.1. for Mobile G1.
  4. 4. Brief History - continuationAndroid OS Versions: > Android 1.1 > Android 1.5 Cupcake > Android 1.6 Donut > Android 2.0/2.1 Eclair > Android 2.2.x Froyo > Android 2.3.x Gingerbread > Android 3. x Honeycomb > Android 4.0.x Ice Cream Sandwich > Android 4.1 Jelly Bean
  5. 5. Android Version Market Share
  6. 6. What will you need? • Computer running Windows, Linux, or Mac OS X • Java SDK • Google Android SDK • Integrated Development Environment (IDE)
  7. 7. InstallationPlease refer to:
  8. 8. Android Development Tool Android SDK and Virtual Device Manager Android Emulator / Phone Dalvik Debug Monitoring Service SQLite3 …more
  9. 9. Application Components Activity• Present a visual user interface for one focused endeavor the user can undertake• Example: a list of menu items users can choose from Services• Run in the background for an indefinite period of time• Example: calculate and provide the result to activities that need it Broadcast Receivers• Receive and react to broadcast announcements• Example: announcements that the time zone has changed Content Providers• Store and retrieve data and make it accessible to all applications• Example: Android ships with a number of content providers for common Intents• Hold the content of a message• Example: convey a request for an activity to present an image to the user or let the user edit some text
  10. 10. Activities
  11. 11. Services• Run in the background o Can continue even if Activity that started it dies o Should be used if something needs to be done while the user is not interacting with application  Otherwise, a thread is probably more applicable o Should create a new thread in the service to do work in, since the service runs in the main thread• Can be bound to an application o In which case will terminate when all applications bound to it unbind o Allows multiple applications to communicate with it via a common interface• Needs to be declared in manifest file• Like Activities, has a structured life cycle
  12. 12. Services
  13. 13. Project Components SRC • The project source code GEN • Auto generated code • Example: Included libraries Resources • Drawables • Layout • Values like strings Manifest File • A must have xml file. Contains essential information about the system to the android system
  14. 14. XML• Used to define some of the resources o Layouts (UI) o Strings• Manifest file• Shouldn’t usually have to edit it directly, Eclipse can do that for you• Preferred way of creating UIs o Separates the description of the layout from any actual code that controls it o Can easily take a UI from one platform to another
  15. 15. R Class• Auto-generated: you shouldn’t edit it• Contains IDs of the project resources• Enforces good software engineering• Use findViewById and Resources object to get access to the resources o Ex. Button b = (Button)findViewById( o Ex. getResources().getString(R.string.hello));
  16. 16. Layouts• Eclipse has a great UI creator o Generates the XML for you• Composed of View objects• Can be specified for portrait and landscape mode o Use same file name, so can make completely different UIs for the orientations without modifying any code
  17. 17. Layouts - continuation
  18. 18. Layouts - continuation• Click ‘Create’ to make layout modifications• When in portrait mode can select ‘Portrait’ to make a res sub folder for portrait layouts o Likewise for Landscape layouts while in landscape mode o Will create folders titled ‘layout-port’ and ‘layout-land’• Note: these ‘port’ and ‘land’ folders are examples of ‘alternate layouts’, see here for more info o• Avoid errors by making sure components have the same id in both orientations, and that you’ve tested each orientation thoroughly
  19. 19. Layouts - continuation
  20. 20. Running in Eclipse• Similar to launching a regular Java app, use the launch configurations• Specify an Android Application and create a new one• Specify activity to be run• Can select a manual option, so each time program is run, you are asked whether you want to use the actual phone or the emulator o Otherwise, it should be smart and use whichever one is available
  21. 21. Google MapsPlease refer to :
  22. 22. Google Maps
  23. 23. Google Maps <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > < android:id="@+id/mapview1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:enabled="true" android:clickable="true" android:apiKey=“Your API Key Here" /> </LinearLayout>
  24. 24. Resources & Acknowledgements• Installation:• Google API:• Android Developer’s Website :• Numerous Forums & other developer sites, including: o o o o
  25. 25. THANK YOU VERY MUCH!Joemarie Comeros AmparoAndroid DeveloperSkype/Ymail/Gmail : joemarieamparo