SlideShare a Scribd company logo
1 of 36
Download to read offline
Android Overview




            Tomi.Mickelsson@idean.com
            Senior Technology Specialist
              http://mobiledevcamp.fi/
          http://www.slideshare.net/atomi/
                     Feb 21, 2009

1 / 36
Agenda
•    Why Android?
•    What is it?
•    SDK and tools
•    UI and widgets
•    Resources, animation
•    Debugging, packaging
•    Market
•    Demo: Spin the Bottle app




2 / 36
What is Android?
• modern open-source mobile operating system
• full software stack
         – Linux kernel 2.6
         – Java middleware, framework
         – core applications
• Google & OHA




3 / 36
Why Android?
• open-source
         – apache license
         – cost
         – sets developers free
• solid foundation: Linux kernel
• good framework based on Java
• empower users
         – replace core apps
         – personalize
• Google stuff
• huge opportunity for vendors, developers, users
         – OS for free, innovate at app level
• not just for phones

4 / 36
Building blocks




5 / 36
Java Framework
• Java: reasonable choice
         – mainstream language
         – millions of developers
• J2SE, not J2ME
• Dalvik VM: fast register based VM
• modular app architecture
         – building screens and services, not monolithic black-boxes
         – loosely coupled, addressable parts
•   every app runs its own process
•   multitasking; background processes
•   JNI discouraged at this point
•   other frameworks possible


6 / 36
Quickstart
•    install JDK 1.5
•    install Android SDK
•    install eclipse
•    read SDK docs
•    learn about samples, API demos
•    get help from newsgroup
•    read sources for advanced stuff
•    test on G1 or dev phone
•    publish app in Market




7 / 36
SDK
• all platforms supported
         – linux, windows, mac
•   no installation, just unzip
•   81.4MB - ver1.1
•   clean and compact
•   good documentation
•   1.1 latest version




8 / 36
Eclipse Editor
• most popular
  Java editor
         –   tons of features
         –   refactoring
         –   debugging
         –   integrated help
• ADT: Android
  Development
  Tools plugin




9 / 36
Emulator




10 / 36
Emulator
• based on QEMU emulator for ARM processor
          – boots up real linux kernel
•    camera previews
•    easy networking
•    audio recording
•    switch orientation: CTRL+F12
•    install apps with browser or adb
•    market app not available
•    skins




11 / 36
Tools in SDK
• all tools available as cmdline
      – eclipse not required
• adb - Android Debug Bridge
      –   adb push - transfer files from/to emulator
      –   adb install - install app
      –   adb logcat - view debug log
      –   adb shell - linux shell access
•    aapt - Android Asset Packaging Tool
•    ddms
•    draw9patch
•    mksdcard
•    hierarchyviewer
•    sqlite
12 / 36
Tools - adb shell
• live shell access to emulator file system




13 / 36
Tools - cpuinfo




14 / 36
3rd party tools - UI builder
• http://www.droiddraw.org/
• create UI visually




15 / 36
3rd party tools - Sensor simulator
• http://code.google.com/p/openintents/wiki/SensorSimulator
• feed sensor data to emulator




16 / 36
Source code
•    quot;use the source, Luke!quot;
•    http://source.android.com/
•    GIT version control
•    whole package 2.1GB
•    just to peek at some files:
      – http://android.git.kernel.org/
      – http://www.google.com/codesearch
• sources for core apps: launcher,
  browser...
      – great for learning advanced stuff!




17 / 36
App Architecture
• Activity
      – visible screens
• Service
      – background services
• Content Provider
      – shared data
• Broadcast receivers
      – receive and react to broadcasted events
• Intent
      – activating components




18 / 36
UI
• rich Java UI API
      – layouts and widgets
• declarative programming ala XML
• customization features
      – inherit and override a base widget
      – combine existing widgets
      – fully draw yourself - View::onDraw(Canvas canvas)
• designed for touch right from start
      – padmode, touhmode
      – context menu with a long touch
• focus management
• OpenGL
• may not beat iPhone, but foundation ok for future

19 / 36
Layouts
•   container for widgets
•   XML party; similar to web's XHTML
•   widgets refered from code with IDs
•   relative layouts, fits in various screens
•   AbsoluteLayout discouraged




20 / 36
Widgets
• great number of
  widgets
• android.widgets.*




21 / 36
Widgets - ListView
• most common widget; the workhorse
      – learn well
•   scroll and fling
•   list fading at ends
•   scrollbar on off
•   cache optimization




22 / 36
Widgets - Webkit
•   embedded browser
•   fetch local or remote content
•   Javascript and AJAX supported
•   bridge for Java/Javascript communication




23 / 36
Widgets - MapView
• location-based apps will be hot
• maps built-in
• based on Google Maps




24 / 36
Resources
• images, audio, video, strings, layouts,
  themes, color values
• divided into logical dir hierarchy
• fetch from code
      –   drawables: Resources.getDrawable()
      –   XML: Resources.getXML()
      –   strings: Resources.getString()
      –   raw: Resources.openRawResource()
• intelligent resource matching
      –   values-en/, values-fr/
      –   drawable-land/
      –   drawable-nokeys/
      –   drawable-en-finger/
• XML all over
25 / 36
9-Patch Bitmaps
• image stretching for widgets
• embedded padding measurements




26 / 36
Animation
• in-built animation framework
• all views animable, View.StartAnimation()
• tweened anim
      – scale, alpha, transition, rotation
• frame-by-frame anim
      – list images




27 / 36
App Data
• sandboxed file system
      – adb push, pull
• preferences
• SQLite
• SDcard for bigger files




28 / 36
Debugging
• Eclipse & DDMS
      – DDMS: Dalvik Debug Monitor Server tool
• breakpoints and watches
• actual device debugged via USB




29 / 36
Security
• linux user account per app
• based on app permissions
• apps are signed by developer private key
      – no central authority
• why signing at all:
      – two sibling apps can share data (process and userid)
      – upgrade also smooth, same key




30 / 36
Delivery - APK
•    zip file
•    Java .class converted to .dex
•    XML-files compressed into binary form
•    manifest for app permissions
•    signed with developer private key
•    developer public key included
•    assets packaged as is




31 / 36
Market
• since Oct08, free apps only
• payment system for US/UK developers Feb09
      – Google Checkout system
• 25$ registration fee per developer
• developer gets 70%
• price range $0.99 - $200
      – quot;I'm rich!quot;-apps disallowed
•   over 13y of age
•   24h money-back
•   no explicit content
•   upgrade logic for apps
•   user ratings
•   uninstall percentage
32 / 36
Future
• new versions coming
      – SDK 1.1 just released
      – quot;cupcakequot; in the works
• new phones coming
      –   G2 from HTC
      –   Huawei 2H09
      –   Samsung 2H09
      –   O2: 6-8 phones 2H09?
      –   Dell, Acer?
• Innovations, cool apps




33 / 36
Demo - Spin the Bottle
•   experimental fun app, quot;turhakequot;
•   available in Android Market for free
•   10000 downloads in 44hours
•   22000 downloads in 10 days
•   rating 3.78/5




34 / 36
Why be a mobile developer?
• innovation hotspot
• 4B subscriptions in the world
• quot;mother of all marketsquot;




35 / 36
Thank you
• See you around at dev camp




36 / 36

More Related Content

What's hot

android architecture
android architectureandroid architecture
android architecture
Aashita Gupta
 
Android seminar-presentation
Android seminar-presentationAndroid seminar-presentation
Android seminar-presentation
connectshilpa
 

What's hot (20)

ANDROID
ANDROIDANDROID
ANDROID
 
Android seminar report
Android seminar reportAndroid seminar report
Android seminar report
 
Android My Seminar
Android My SeminarAndroid My Seminar
Android My Seminar
 
Android Seminar || history || versions||application developement
Android Seminar || history || versions||application developement Android Seminar || history || versions||application developement
Android Seminar || history || versions||application developement
 
Android Development: The Basics
Android Development: The BasicsAndroid Development: The Basics
Android Development: The Basics
 
Android Platform Architecture
Android Platform ArchitectureAndroid Platform Architecture
Android Platform Architecture
 
Android Development Workshop
Android Development WorkshopAndroid Development Workshop
Android Development Workshop
 
Android overview
Android overviewAndroid overview
Android overview
 
Android ppt
 Android ppt Android ppt
Android ppt
 
android architecture
android architectureandroid architecture
android architecture
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
Presentation2 android Os
Presentation2 android OsPresentation2 android Os
Presentation2 android Os
 
Introduction to Android, Architecture & Components
Introduction to  Android, Architecture & ComponentsIntroduction to  Android, Architecture & Components
Introduction to Android, Architecture & Components
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android seminar-presentation
Android seminar-presentationAndroid seminar-presentation
Android seminar-presentation
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android app development ppt
Android app development pptAndroid app development ppt
Android app development ppt
 
Android app development
Android app developmentAndroid app development
Android app development
 
Android Web app
Android Web app Android Web app
Android Web app
 

Similar to Android Overview

Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014
Opersys inc.
 
Is Android the New Embedded Linux? at AnDevCon VI
Is Android the New Embedded Linux? at AnDevCon VIIs Android the New Embedded Linux? at AnDevCon VI
Is Android the New Embedded Linux? at AnDevCon VI
Opersys inc.
 
Is Android the New Embedded Linux? at AnDevCon V
Is Android the New Embedded Linux? at AnDevCon VIs Android the New Embedded Linux? at AnDevCon V
Is Android the New Embedded Linux? at AnDevCon V
Opersys inc.
 
Embedded Android Workshop at AnDevCon V
Embedded Android Workshop at AnDevCon VEmbedded Android Workshop at AnDevCon V
Embedded Android Workshop at AnDevCon V
Opersys inc.
 
Embedded Android Workshop at AnDevCon IV
Embedded Android Workshop at AnDevCon IVEmbedded Android Workshop at AnDevCon IV
Embedded Android Workshop at AnDevCon IV
Opersys inc.
 

Similar to Android Overview (20)

An Introduction To Android
An Introduction To AndroidAn Introduction To Android
An Introduction To Android
 
Agil Eight Android
Agil Eight AndroidAgil Eight Android
Agil Eight Android
 
Google Android @ AlphaCSP's JavaEdge
Google Android @ AlphaCSP's JavaEdgeGoogle Android @ AlphaCSP's JavaEdge
Google Android @ AlphaCSP's JavaEdge
 
Begining Android Development
Begining Android DevelopmentBegining Android Development
Begining Android Development
 
Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009
 
Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014
 
Open Social Summit Korea Overview
Open Social Summit Korea OverviewOpen Social Summit Korea Overview
Open Social Summit Korea Overview
 
Is Android the New Embedded Linux? at AnDevCon VI
Is Android the New Embedded Linux? at AnDevCon VIIs Android the New Embedded Linux? at AnDevCon VI
Is Android the New Embedded Linux? at AnDevCon VI
 
Droidcon uk2012 androvm
Droidcon uk2012 androvmDroidcon uk2012 androvm
Droidcon uk2012 androvm
 
Is Android the New Embedded Linux? at AnDevCon V
Is Android the New Embedded Linux? at AnDevCon VIs Android the New Embedded Linux? at AnDevCon V
Is Android the New Embedded Linux? at AnDevCon V
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
 
Embedded Android Workshop at AnDevCon V
Embedded Android Workshop at AnDevCon VEmbedded Android Workshop at AnDevCon V
Embedded Android Workshop at AnDevCon V
 
Android
Android Android
Android
 
Android Applications Development: A Quick Start Guide
Android Applications Development: A Quick Start GuideAndroid Applications Development: A Quick Start Guide
Android Applications Development: A Quick Start Guide
 
"JavaME + Android in action" CCT-CEJUG Dezembro 2008
"JavaME + Android in action" CCT-CEJUG Dezembro 2008"JavaME + Android in action" CCT-CEJUG Dezembro 2008
"JavaME + Android in action" CCT-CEJUG Dezembro 2008
 
Embedded Android Workshop at AnDevCon IV
Embedded Android Workshop at AnDevCon IVEmbedded Android Workshop at AnDevCon IV
Embedded Android Workshop at AnDevCon IV
 
01 introduction & setup - Android
01   introduction & setup - Android01   introduction & setup - Android
01 introduction & setup - Android
 
Automatic image moderation in classifieds
Automatic image moderation in classifiedsAutomatic image moderation in classifieds
Automatic image moderation in classifieds
 
Automatic image moderation in classifieds, Jarosław Szymczak
Automatic image moderation in classifieds, Jarosław SzymczakAutomatic image moderation in classifieds, Jarosław Szymczak
Automatic image moderation in classifieds, Jarosław Szymczak
 
Android best practices 2015
Android best practices 2015Android best practices 2015
Android best practices 2015
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

Android Overview

  • 1. Android Overview Tomi.Mickelsson@idean.com Senior Technology Specialist http://mobiledevcamp.fi/ http://www.slideshare.net/atomi/ Feb 21, 2009 1 / 36
  • 2. Agenda • Why Android? • What is it? • SDK and tools • UI and widgets • Resources, animation • Debugging, packaging • Market • Demo: Spin the Bottle app 2 / 36
  • 3. What is Android? • modern open-source mobile operating system • full software stack – Linux kernel 2.6 – Java middleware, framework – core applications • Google & OHA 3 / 36
  • 4. Why Android? • open-source – apache license – cost – sets developers free • solid foundation: Linux kernel • good framework based on Java • empower users – replace core apps – personalize • Google stuff • huge opportunity for vendors, developers, users – OS for free, innovate at app level • not just for phones 4 / 36
  • 6. Java Framework • Java: reasonable choice – mainstream language – millions of developers • J2SE, not J2ME • Dalvik VM: fast register based VM • modular app architecture – building screens and services, not monolithic black-boxes – loosely coupled, addressable parts • every app runs its own process • multitasking; background processes • JNI discouraged at this point • other frameworks possible 6 / 36
  • 7. Quickstart • install JDK 1.5 • install Android SDK • install eclipse • read SDK docs • learn about samples, API demos • get help from newsgroup • read sources for advanced stuff • test on G1 or dev phone • publish app in Market 7 / 36
  • 8. SDK • all platforms supported – linux, windows, mac • no installation, just unzip • 81.4MB - ver1.1 • clean and compact • good documentation • 1.1 latest version 8 / 36
  • 9. Eclipse Editor • most popular Java editor – tons of features – refactoring – debugging – integrated help • ADT: Android Development Tools plugin 9 / 36
  • 11. Emulator • based on QEMU emulator for ARM processor – boots up real linux kernel • camera previews • easy networking • audio recording • switch orientation: CTRL+F12 • install apps with browser or adb • market app not available • skins 11 / 36
  • 12. Tools in SDK • all tools available as cmdline – eclipse not required • adb - Android Debug Bridge – adb push - transfer files from/to emulator – adb install - install app – adb logcat - view debug log – adb shell - linux shell access • aapt - Android Asset Packaging Tool • ddms • draw9patch • mksdcard • hierarchyviewer • sqlite 12 / 36
  • 13. Tools - adb shell • live shell access to emulator file system 13 / 36
  • 15. 3rd party tools - UI builder • http://www.droiddraw.org/ • create UI visually 15 / 36
  • 16. 3rd party tools - Sensor simulator • http://code.google.com/p/openintents/wiki/SensorSimulator • feed sensor data to emulator 16 / 36
  • 17. Source code • quot;use the source, Luke!quot; • http://source.android.com/ • GIT version control • whole package 2.1GB • just to peek at some files: – http://android.git.kernel.org/ – http://www.google.com/codesearch • sources for core apps: launcher, browser... – great for learning advanced stuff! 17 / 36
  • 18. App Architecture • Activity – visible screens • Service – background services • Content Provider – shared data • Broadcast receivers – receive and react to broadcasted events • Intent – activating components 18 / 36
  • 19. UI • rich Java UI API – layouts and widgets • declarative programming ala XML • customization features – inherit and override a base widget – combine existing widgets – fully draw yourself - View::onDraw(Canvas canvas) • designed for touch right from start – padmode, touhmode – context menu with a long touch • focus management • OpenGL • may not beat iPhone, but foundation ok for future 19 / 36
  • 20. Layouts • container for widgets • XML party; similar to web's XHTML • widgets refered from code with IDs • relative layouts, fits in various screens • AbsoluteLayout discouraged 20 / 36
  • 21. Widgets • great number of widgets • android.widgets.* 21 / 36
  • 22. Widgets - ListView • most common widget; the workhorse – learn well • scroll and fling • list fading at ends • scrollbar on off • cache optimization 22 / 36
  • 23. Widgets - Webkit • embedded browser • fetch local or remote content • Javascript and AJAX supported • bridge for Java/Javascript communication 23 / 36
  • 24. Widgets - MapView • location-based apps will be hot • maps built-in • based on Google Maps 24 / 36
  • 25. Resources • images, audio, video, strings, layouts, themes, color values • divided into logical dir hierarchy • fetch from code – drawables: Resources.getDrawable() – XML: Resources.getXML() – strings: Resources.getString() – raw: Resources.openRawResource() • intelligent resource matching – values-en/, values-fr/ – drawable-land/ – drawable-nokeys/ – drawable-en-finger/ • XML all over 25 / 36
  • 26. 9-Patch Bitmaps • image stretching for widgets • embedded padding measurements 26 / 36
  • 27. Animation • in-built animation framework • all views animable, View.StartAnimation() • tweened anim – scale, alpha, transition, rotation • frame-by-frame anim – list images 27 / 36
  • 28. App Data • sandboxed file system – adb push, pull • preferences • SQLite • SDcard for bigger files 28 / 36
  • 29. Debugging • Eclipse & DDMS – DDMS: Dalvik Debug Monitor Server tool • breakpoints and watches • actual device debugged via USB 29 / 36
  • 30. Security • linux user account per app • based on app permissions • apps are signed by developer private key – no central authority • why signing at all: – two sibling apps can share data (process and userid) – upgrade also smooth, same key 30 / 36
  • 31. Delivery - APK • zip file • Java .class converted to .dex • XML-files compressed into binary form • manifest for app permissions • signed with developer private key • developer public key included • assets packaged as is 31 / 36
  • 32. Market • since Oct08, free apps only • payment system for US/UK developers Feb09 – Google Checkout system • 25$ registration fee per developer • developer gets 70% • price range $0.99 - $200 – quot;I'm rich!quot;-apps disallowed • over 13y of age • 24h money-back • no explicit content • upgrade logic for apps • user ratings • uninstall percentage 32 / 36
  • 33. Future • new versions coming – SDK 1.1 just released – quot;cupcakequot; in the works • new phones coming – G2 from HTC – Huawei 2H09 – Samsung 2H09 – O2: 6-8 phones 2H09? – Dell, Acer? • Innovations, cool apps 33 / 36
  • 34. Demo - Spin the Bottle • experimental fun app, quot;turhakequot; • available in Android Market for free • 10000 downloads in 44hours • 22000 downloads in 10 days • rating 3.78/5 34 / 36
  • 35. Why be a mobile developer? • innovation hotspot • 4B subscriptions in the world • quot;mother of all marketsquot; 35 / 36
  • 36. Thank you • See you around at dev camp 36 / 36