Domo Arigato Mr. Roboto - Open Source Bridge 2009

  • 3,326 views
Uploaded on

introduction to Android …

introduction to Android
Open Source Bridge
June 17 2009
Portland, Oregon

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
3,326
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
93
Comments
1
Likes
3

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. Domo Arigato Mr. Roboto Sean Sullivan June 17, 2009
  • 2. Wednesday June 17 3:50 PM - Morrison Domo Arigato Mr. Roboto Thursday June 18 11:20 AM - Hawthorne Android Location Services
  • 3. Android is a software stack for mobile devices that includes an operating system, middleware and key applications source: Google
  • 4. source: NY Times, May 27 2009
  • 5. August 2005 Google acquires Android November 2007 Open Handset Alliance announcement Android SDK available
  • 6. September 2008 HTC and T-Mobile announce G1 October 2008 Android 1.0 Android Market goes live G1 available in retail stores in USA Android open source project
  • 7. February 2009 Android 1.1 HTC and Vodafone announce HTC Magic April 2009 Android 1.5 HTC Magic available in Spain
  • 8. June 2009 Acer joins Open Handset Alliance Huawei announces U8230
  • 9. Huawei U8230 source: http://www.huawei.com/news/view.do?id=10855&cid=42
  • 10. Android applications • multiple applications, running simultaneously • user may switch between running applications • background services • copy and paste
  • 11. Third party applications lifeaware.net Maverick Android Locale
  • 12. Distributing Android apps • Android Market • self-publish on your own web site • use a 3rd party application store
  • 13. Android Market
  • 14. Android Market • US$25 registration fee for developers • developer receives 70% of each sale • remaining amount goes to carriers • Google does not take a percentage • http://www.android.com/market/
  • 15. Self-publishing • upload application to your own web server http://icecondor.com/download/icecondor-v20090201.apk • use correct MIME type application/vnd.android.package-archive
  • 16. System Architecture
  • 17. Open source project • http://source.android.com • Apache 2.0 and GPL v2 • Git repository
  • 18. Android applications • are written in the Java language • run on the Dalvik virtual machine • Android != J2ME
  • 19. Dalvik VM • not a Java VM • design constraints: slow CPU, little RAM • will run on OS without swap space • http://sites.google.com/site/io/dalvik-vm-internals
  • 20. Application API’s java.util.* java.io.* Java java.lang.* etc android.widget.* UI android.view.* android.graphics.* Telephony android.telephony.* SMS android.telephony.gsm.SmsManager
  • 21. Application API’s Web android.webkit.WebView Camera android.hardware.CameraDevice Local database android.database.* Maps com.google.android.maps.MapView Location android.location.LocationManager Multimedia android.media.MediaPlayer HTTP org.apache.http.client.*
  • 22. Getting started http://developer.android.com
  • 23. Development tools • Java SDK • Android SDK • Eclipse • Eclipse plugin
  • 24. Android SDK • Android emulator • command line tools • documentation • example applications
  • 25. Android emulator
  • 26. Eclipse plugin https://dl-ssl.google.com/android/eclipse/
  • 27. Android applications • application package file: myapp.apk • an application is composed of one or more activities
  • 28. Activity • an activity is usually a single screen in your application • however, activities can also be faceless • one activity is designated as the entry point for your application
  • 29. android.app.Activity import android.app.Activity; public class MyActivity extends Activity { public void onCreate(Bundle savedValues) { super.onCreate(savedValues); setContentView(R.layout.main); } }
  • 30. Application building blocks • AndroidManifest.xml • Intents & IntentReceivers • Activities • Services • Views • Notifications • Layouts • ContentProviders
  • 31. UI development • XML • Java code
  • 32. Android Views a view is an object that knows how to draw itself on the screen
  • 33. ListView
  • 34. DatePicker
  • 35. MapView
  • 36. Additional topics • Threading • Android IDL (AIDL) • Security model • Data synchronization • Internationalization • WiFi API • Power management • Bluetooth API
  • 37. What’s next for Android? • more phones • text to speech API • “Donut”
  • 38. Questions?
  • 39. Thank you
  • 40. Android resources • http://developer.android.com • http://android-developers.blogspot.com • http://code.google.com/p/apps-for-android/ • http://sites.google.com/site/io/ • http://www.openhandsetalliance.com • http://source.android.com