Android overview


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

No notes for slide
  • named after a robot in  Bladerunner
  •   Open Handset Alliance , a consortium of 47  hardware ,  software , and  telecom  companies devoted to advancing  open standards  for mobile devices. Includes  Texas Instruments ,  Broadcom Corporation ,  Google , HTC, Intel, LG, Marvell Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel and T-Mobile
  • The linux kernel 2.6 is the hardware abstraction layer (HAL) between the hardware and the android software stack.
  • Maybe more profitable with ads than actually selling the app
  • Android overview

    1. 1. Android OverviewDr. Josh DehlingerDr. Siddharth Kaza
    2. 2. Why Mobile App Development? The fact that we can! Only a few years ago you had tobe in the Motorola inner circle to do it! Mobile platform is the platform of the future Double-digit growth in world-wide smartphone ownership3 Job market is hot Market for mobile software surges from $4.1 billion in 2009 to$17.5 billion by 20121 2010 survey: 72% of recruiters looking for iPhone appdevelopers, 60% for Android1 mobile app developers made $85,000 in 2010 andsalaries expected to rise2 Students (and faculty!) are naturally interested!1
    3. 3. Why Android? A lot of students have them 2010 survey by University of CO1: 22% of collegestudents have Android phone (26% Blackberry, 40%iPhone) Gartner survey2: Android used on 22.7% ofsmartphones sold world-wide in 2010 (37.6%Symbian, 15.7% iOS) Students already know Java and Eclipse Low learning curve CS0 students can use App Inventor for Android1
    4. 4. Why Android? Transferring app to phone is trivial Can distribute by putting it on the web Android Market for wider distribution• It’s not 1984
    5. 5. Types ofAndroidDevices
    6. 6. Various Android Phones
    7. 7. Galaxy Tablet
    8. 8. Android-Powered Microwave Touch Revolution – at CES 2010
    9. 9. Galaxy Nexus
    10. 10. Brief History 1996 The WWW already had websites with color andimages But, the best phones displayed a couple of linesof monochrome text! Enter: Wireless Application Protocol (WAP) – stripped downHTTP for bandwidth reduction Wireless Markup Language (WML) – stripped downHTML for content
    11. 11. Brief History Many issues (WAP = “Wait And Pay”) Few developers to produce content (it wasn’t fun!) Really hard to type in URLs using the smallkeyboards Data fees frightfully expensive No billing mechanism – content difficult tomonetize Other platforms emerged Palm OS, Blackberry OS, J2ME, Symbian(Nokia), BREW, OS X iPhone, Windows Mobile
    12. 12. Brief History - Android 2005 Google acquires startup Android Inc. to start Android platform Work on Dalvik VM begins 2007 Open Handset Alliance announced Early look at SDK 2008 Google sponsors 1stAndroid Developer Challenge T-Mobile G1 announced SDK 1.0 released Android released open source (Apache License) Android Dev Phone 1 released
    13. 13. Brief History cont. 2009 SDK 1.5 (Cupcake) New soft keyboard with “autocomplete” feature SDK 1.6 (Donut) Support Wide VGA SDK 2.0/2.0.1/2.1 (Eclair) Revamped UI, browser 2010 Nexus One released to the public SDK 2.2 (Froyo) Flash support, tethering SDK 2.3 (Gingerbread) UI update, system-wide copy-paste
    14. 14. HoneycombAndroid3.0-3.Brief History cont. 2011 SDK 3.0/3.1/3.2 (Honeycomb) for tablets only New UI for tablets, support multi-core processors SDK 4.0/4.0.1/4.0.2/4.0.3 (Ice Cream Sandwich) Changes to the UI, Voice input, NFCIce cream SandwicAndroid 4.0+
    15. 15. The Android DeveloperWebsite This should be your homepage for the nextsemester!
    16. 16. Distribution of DevicesData collected during a 14-day period ending on January 3, 2012
    17. 17. What is Google Android? A software stack for mobile devices that includes An operating system Middleware Key Applications Uses Linux to provide core system services Security Memory management Process management Power management Hardware drivers
    18. 18. Android ArchitectureMore details at:
    19. 19. Mobile Devices: Advantages (ascompared to fixed devices) Always with the user Typically have Internet access Typically GPS enabled Typically have accelerometer & compass Most have cameras & microphones Many apps are free or low-cost
    20. 20. Mobile Devices: Disadvantages Limited screen size Limited battery life Limited processor speed Limited and sometimes slow network access Limited or awkward input: soft keyboard, phonekeypad, touch screen, or stylus Limited web browser functionality Range of platforms & configurations acrossdevices
    21. 21. Mobile Applications What are they? Any application that runs on a mobile device Types Web apps: run in a web browser HTML, JavaScript, Flash, server-side components,etc. Native: compiled binaries for the device Often make use of web services
    22. 22.  Developmentprocess for anAndroid app
    23. 23. Android Apps Built using Java and new SDK libraries No support for some Java libraries like Swing &AWT Oracle currently suing Google over use Java code compiled into Dalvik byte code(.dex) Optimized for mobile devices (better memorymanagement, battery utilization, etc.) Dalvik VM runs .dex files
    24. 24. Building and running ADB is a client server program that connects clients on developermachine to devices/emulators to facilitate development. An IDE like Eclipse handles this entire process for you. resources(xml files)Android Debug Bridge
    25. 25. Building and running (moredetails) Expandfigure Android InterfaceDefinitionLanguage (AIDL) –Definitions toexchange databetweenapplications (thinkSOAP) Asset Packing ToolAllows processes acrossapps to communicate.
    26. 26. Applications Are Boxed By default, each app is run in its own Linuxprocess Process started when app’s code needs to beexecuted Threads can be started to handle time-consumingoperations Each process has its own Dalvik VM By default, each app is assigned unique Linux ID Permissions are set so app’s files are only visible tothat app
    27. 27. Android Architecture
    28. 28. Publishing and Monetizing Paid apps in Android Market, various othermarkets Free, ad-supported apps in Android Market Ad networks (Google AdMob, Quattro Wireless) Sell your own ads Services to other developers Ex. Skyhook Wireless ( Contests (Android Developer Challenge) Selling products from within your app
    29. 29. Android MarketHas various categories, allows ratingsHave both free/paid appsFeatured apps on web and on phoneThe Android Market (and iTunes/App Store) isgreat for developers Level playing field, allowing third-party apps Revenue sharing
    30. 30. Publishing to Android Market Requires Google Developer Account $25 fee Link to a Merchant Account Google Checkout Link to your checking account Google takes 30% of app purchase price
    31. 31. Android Design Philosophy Applications should be: Fast Resource constraints: <200MB RAM, slow processor Responsive Apps must respond to user actions within 5 seconds Secure Apps declare permissions in manifest Seamless Usability is key, persist data, suspend services Android kills processes in background as needed
    32. 32. Leveraging the web To keep your apps fast and responsive,consider how you can leverage the web What ____________ can be ________ on aserver or in the cloud? Tasks/performed Data/persisted Data/retrieved Beware, data transfer is also expensive and canbe slow
    33. 33. Other design principles Great reference!
    34. 34. Apple vs. Google Open Handset Alliance 30+ technology companies Commitment to openness, shared vision, andconcrete plans Compare with Mac/PC battles Similar (many PC manufacturers, one Apple) Different (Microsoft sells Windows, Google givesaway Android)