Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Getting Started with Android 1.5


Published on

Android Presentation in Xebia's XKE session

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Getting Started with Android 1.5

  1. 1. Android By: Gaurav Kohli
  2. 2. Agenda
  3. 3. History <ul><li>In July 2005, Google acquired Android, Inc., a small startup company based in Palo Alto, CA. </li></ul><ul><li>Android's co-founders who went to work at Google included Andy Rubin (co-founder of Danger), Rich Miner (co-founder of Wildfire Communications, Inc.), Nick Sears (once VP at T-Mobile), and Chris White (one of the first engineers at WebTV). </li></ul>
  4. 4. Introduction- What is Android ? <ul><li>Android is a software platform for mobile devices, powered by the Linux operating system, initially developed by Google and later the Open Handset Alliance [1] . </li></ul><ul><li>It allows developers to write managed code in the Java language, controlling the device via Google-developed Java libraries. </li></ul>[1] http://
  5. 5. Introduction- Why Android ? <ul><li>Mobile Computing is next big thing </li></ul><ul><li>Google is behind it </li></ul><ul><li>Not limited to mobiles only </li></ul><ul><li>Open-Handset Alliance </li></ul><ul><li>Community support </li></ul><ul><li>Open/Free/Java Syntax/Tools support </li></ul>
  6. 6. Open Handset alliance
  7. 7. Architecture of Android
  8. 8. Architecture of Android <ul><ul><li>Linux Kernel based </li></ul></ul><ul><ul><li>Libraries (Open sourced/ Custom) </li></ul></ul><ul><ul><ul><li>Open GL </li></ul></ul></ul><ul><ul><li>Android Runtime </li></ul></ul><ul><ul><ul><li>Dalvik VM </li></ul></ul></ul><ul><ul><li>Application Framework </li></ul></ul><ul><ul><li>Applications </li></ul></ul>
  9. 9. <ul><ul><li>Highly optimized VM, compiled byte is optimized for mobile devices </li></ul></ul><ul><ul><li>End result is NOT the same byte code as Java, </li></ul></ul><ul><ul><ul><li>dx in the sdk takes compiled Java class files and converts them into .dex </li></ul></ul></ul><ul><ul><li>No JIT </li></ul></ul><ul><ul><li>Built with security and performances (battery life) in mind </li></ul></ul>Dalvik VM
  10. 10. <ul><li>Applications </li></ul>
  11. 11. <ul><ul><li>SDK   </li></ul></ul><ul><ul><ul><li>Available at </li></ul></ul></ul><ul><ul><li>Eclipse </li></ul></ul><ul><ul><ul><li>  3.3(Europa) or 3.4 (Ganymede) </li></ul></ul></ul><ul><ul><li>Eclipse Plugin </li></ul></ul><ul><ul><ul><li>  XP,Vista, Linux, x86 Mac 10.4.8 or later </li></ul></ul></ul><ul><ul><ul><li> </li></ul></ul></ul><ul><ul><li>Leave the emulator running!   </li></ul></ul><ul><ul><ul><li>Exact opposite to J2ME and BREW, your app will be deployed each subsequent run or debug </li></ul></ul></ul>Installing and Using the SDK
  12. 12. Building Blocks of Application Activity An  activity  presents a visual user interface for one focused endeavor the user can undertake. Intent An intent is an abstract description of an operation to be performed. It can be used with startActivity to launch an  Activity, broadcastIntent to send it to any interested BroadCastReceiver components Services A  service  doesn't have a visual user interface, but rather runs in the background for an indefinite period of time Content Provider A  content provider  makes a specific set of the application's data available to other applications.
  13. 13. <ul><li>Emulator (comes with SDK) </li></ul><ul><li>Eclipse Plugin </li></ul><ul><li>Android SDK </li></ul> Developer Tool Chain
  14. 14. First Simple Application <ul><li>package com.example.hello; </li></ul><ul><li>import; </li></ul><ul><li>import android.os.Bundle; </li></ul><ul><li>import android.widget.TextView; </li></ul><ul><li>public class HelloAndroid extends Activity { </li></ul><ul><li>/** Called when the activity is first created. */ </li></ul><ul><li>@Override </li></ul><ul><li>public void onCreate(Bundle savedInstanceState) { </li></ul><ul><li>……… . </li></ul><ul><li>} </li></ul><ul><li>} </li></ul>
  15. 15. Android Development flow 
  16. 16. Android Manifest <ul><ul><li>Describes the Application </li></ul></ul><ul><ul><li>Describes the building blocks of an application that it exposes: activities, services, broadcast receivers and content providers </li></ul></ul><ul><ul><li>Intent filters allow the platform to find the best application for the request </li></ul></ul>
  17. 17. Comparison to other platforms <ul><ul><li>Iphone </li></ul></ul><ul><ul><li>Symbian </li></ul></ul><ul><ul><li>Palm Pre </li></ul></ul>
  18. 18. Advantages / Disadvantages  <ul><ul><li>iPhone  </li></ul></ul><ul><ul><ul><li>has a lot of iHype, easier to get publicity in the short term </li></ul></ul></ul><ul><ul><ul><li>only allows one application to run at a given time </li></ul></ul></ul><ul><ul><ul><li>Apple are the gatekeeper </li></ul></ul></ul><ul><ul><ul><li>no telephony access from within the SDK </li></ul></ul></ul><ul><ul><li>Android </li></ul></ul><ul><ul><ul><li>Content providers and intents allow applications to communicate with each other </li></ul></ul></ul><ul><ul><ul><li>GPS as a content provider </li></ul></ul></ul><ul><ul><ul><li>unregulated marketplace </li></ul></ul></ul><ul><ul><ul><li>Potential hardware fragmentation </li></ul></ul></ul>
  19. 19. <ul><li>Android 1.5 SDK Released. </li></ul><ul><li>Samsung I7500 annouced yesterday. </li></ul><ul><li>Aceratec to release an android Notebook. </li></ul><ul><li>HTC planning to launch G1 in India soon. </li></ul>Latest News
  20. 20. Google groups: For application development: For platform development: IRC: #android on freenode is a good source for example and tutorials References
  21. 21. <ul><li>Q & A </li></ul>