Your SlideShare is downloading. ×
Android location services from social networks to games
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Android location services from social networks to games

1,768
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,768
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
43
Comments
0
Likes
0
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. Android and Location June 18, 2009 – Open Source Bridge Don Park
  • 2. Don Park @donpdonp
  • 3. Don Park
  • 4. Don Park
  • 5. Don Park
  • 6. Overview The Android Market Development/Location API Apps and Games Opportunities
  • 7. The Android Market
  • 8. Past 6 months of Smartphone Sales
      • T-Mobile sold 1 million G1 phones from Oct 2008 to May 2009[1]. This is the entire installed base for the G1.
     
      • AT&T sold 4 million iPhones in the same time frame. 17 million installed base.
    [1] http://www.deutschetelekom.com/dtag/cms/content/dt/en/654792
  • 9. AdMob Mobile Browser Traffic "We found that Android traffic in the US grew an average of 47% per month since it launched five months ago while iPhone traffic in the US grew an average of 88% per month in the five months following the launch of their App Store."
  • 10. Android Market
      • Total apps in the market: 3953
    http://androidstats.com/home/categories Applications     Communications (214)     Entertainment (765)     Finance (115)     Lifestyle (313)     Multimedia (181)     News & Weather (101)     Productivity (216)     Reference (185)     Shopping (63)     Social (105)     Tools (785)     Travel (138)     Demo (61)     Software Libraries (16) total: 3258 Games     Arcade & Action (180)     Brain & Puzzle (307)     Cards & Casino (63)     Casual (145) total: 695
  • 11. What Sells? Top Free vs Paid
      •   Top 10 Apps (excluding games)
        http://androidstats.com/ 1. The Weather Channel 2. MySpace Mobile 3. Backgrounds 4. ShopSavvy 5. US Yellow Pages Search 6. DailyHoroscope 7. NBA Game Time 8. T-Mobile My Account 9. Free Dictionary Org 10. fBook - Facebook for Android 197. Power Manager Full $0.99 238. Open Home - Full  $3.99 332. MyBackup Pro  $2.99 361. aHome  $4.99 422. dxTop : Home Alternative $3.99 470. Hello IM! $9.99 486. Snap Photo Pro  $0.99 631. BetterCut  $2.99 633. Lock 2.0 - Donate  $1.49 654. Caller ID by WhitePages $6.99
  • 12. Top Games Free vs Paid
      •   Top 10 Games
        http://androidstats.com/ 1. PAC-MAN by Namco 2. Solitaire 3. Labyrinth Lite 4. Sudoku 5. BreakTheBlocks Lite 6. Snake 7. Slide Puzzle 8. Tic Tac Toe 9. Smart Tac Toe 10. PapiJump 109. Doom for Android $2.99 129. Baseball Superstars 2009  $5.95 203. Jewellust $2.95 219. Retro Defense  $4.99 220. Aevum Obscurum  $4.99 224. Tangram Pro  $0.99 234. WordWrench Full  $0.99 237. Battle for Mars $4.99 272. Air Hockey £0.70 289. Spira Defence Pro £1.59
  • 13. Top Paid Apps March 2009 SnapPhoto pro (about #140) $0.99, 1,000-5,000 download count category $1000-$5000 Hello IM! AOL/AIM (about #200) $9.99 1,000-5,000 download count category $10,000-$50,000 dxTop Home Screen replacement (about #300) $3.99. 1,000-5,000 download category $4000-$20,000 Power Manager (about #400) $0.99. 500-1,000 download category $500-$1000
  • 14. What is my IP Sales   What is my IP Free
      • Launched on Jan 28 2009
      • 15. 100-200 dls/day
        Show my IP $0.99
      • Launched on Feb 20 2009
      • 16. 0.5 sales/day
  • 17. Android Operating System
  • 21. Application Composition An Application is made up of activities List Selection Camera Operation Flickr upload
  • 22. public class Radar extends MapActivity implements ServiceConnection, Constants { public void onCreate(Bundle savedInstanceState) { setTitle(getString(R.string.app_name) + " v" + ICECONDOR_VERSION); Location fix = pigeon.getLastFix(); Log.i(appTag, "pigeon says last fix is " + fix); mapController.animateTo(new GeoPoint((int) (fix.getLatitude() * 1000000), (int) (fix.getLongitude() * 1000000))); } }
  • 23. Activity Lifecycle
  • 24. Service/Activity
    • Background
    • 25. Less likely to be paused
    • Foreground
  • 26. public class Pigeon extends Service implements Constants, LocationListener, SharedPreferences.OnSharedPreferenceChangeListener { LocationManager locationManager; public void onCreate() { locationManager = (LocationManager) getSystemService(LOCATION_SERVICE); last_local_fix = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); } }
  • 27. Intents
    • Apps can be mashups of pieces of existing applications.
    • 28. Not used much yet.
    • 29. Camera Activity
  • 30. Intent i = new Intent(); i.setAction(VIEW_ACTION); i.setData(new ContentURI(“http://icecondor.com”)); startActivity(i); <intent-filter . . . > <data android:type=&quot;video/mpeg&quot; android:scheme=&quot;http&quot; . . . /> <data android:type=&quot;audio/mpeg&quot; android:scheme=&quot;http&quot; . . . /> . . . </intent-filter>
  • 31. Content Provider Described by a RESTful URL content://com.example.codelab.transporationprovider query() insert() update() delete()
  • 32. Location API
  • 33. Location Manager
    • Abstract/hands off model
    • 34. Last known location
    • 35. Request updates at a given frequency
    • 36. GPS basics unavailable – is there a lock/signal? (until cupcake)
  • 37. Timeline 8:00:00 set GPS reporting frequency to 2 minutes 8:01:30 GPS powered on by android 8:02:15 GPS FIX accuracy 1200m 8:02:18 GPS FIX accuracy 700m 8:02:21 GPS FIX accuracy 300m 8:02:21 GPS FIX accuracy 100m 8:02:22 GPS FIX accuracy 80m 8:02:23 GPS FIX accuracy 95m 8:02:40 GPS FIX accuracy 82m
  • 38. Location manager update frequency set to: Every 3 minutes = 10 hours of run time Every 10 minutes = 12 hours of run time Turned off = 24 hours of run time GPS drains the battery
  • 39. Cupcake Location Changes Android 1.5 Location Manager GpsStatus.getSattelites() GpsStatus.Listener.onGpsStatusChange()
  • 40. Apps and Games
  • 41. IceCondor
  • 42. IceCondor
      •   Continuous location tracking
    http://icecondor.com Write side
      • GPS location
      • 43. OAUTH push to server
      • 44. long-term server-side storage
    Read side
      • GeoRSS
      • 45. shizzow, upcoming.org
      • 46. feed management
  • 47. Radar
  • 48.  
  • 49.  
  • 50.  
  • 51. IceCondor Sales http://icecondor.com IceCondor Lite
      • Launched on Feb 22 2009
      • 52. First download Feb 23
    IceCondor full
      • Launched on Feb 20 2009
      • 53.   First sale Feb 22
  • 54. ZombieRun
    • Augmented Reality
  • 55.  
  • 56. Parallel Kingdom
  • 57.  
  • 58. Opportunities
  • 59.   There are now over 1,900 location apps at the iPhone store , says Skyhook Wireless . It’s about a 25 / 75 split between free and paid apps.
  • 60.    
  • 61.    
  • 62. Build an open wifi/lat-long database
    • Wigle.net
    • Android 1.5 wifi scan-only mode
    OpenStreetMap Activity
  • 63. Google Latitude Con
    • Appears not to use GPS (battery)
    • 64. Unknown update frequency
    • 65. No location history
    Pro
    • Support for every smartphone OS
    • 66. Google-scale implementation
  • 67. Latitude API http://www.google.com/latitude/apps/badge/api?user=5189588060747846772&type=json { &quot;type&quot;: &quot;FeatureCollection&quot;, &quot;features&quot;: [ { &quot;type&quot;: &quot;Feature&quot;, &quot;geometry&quot;: {&quot;type&quot;: &quot;Point&quot;, &quot;coordinates&quot;: [-118.44967, 33.988717]}, &quot;properties&quot;: { &quot;id&quot;: &quot;5189588060747846772&quot;, &quot;accuracyInMeters&quot;: 1888, &quot;timeStamp&quot;: 1244864014, &quot;reverseGeocode&quot;: &quot;Los Angeles, CA, USA&quot;, &quot;photoUrl&quot;: &quot;http://www.google.com/latitude/apps/badge/api?type=photo&photo=FnLJ1yEBAAA.uZB0qF11JdzXqsnWsulMJQ.K28fiRafHVJpP8N9U2nhDQ&quot;, &quot;photoWidth&quot;: 96, &quot;photoHeight&quot;: 96, &quot;placardUrl&quot;: &quot;http://www.google.com/latitude/apps/badge/api?type=photo_placard&photo=FnLJ1yEBAAA.uZB0qF11JdzXqsnWsulMJQ.K28fiRafHVJpP8N9U2nhDQ&moving=false&stale=false&lod=1&format=png&quot;, &quot;placardWidth&quot;: 56, &quot;placardHeight&quot;: 59 } } ] }
  • 68. The Google Maps Data API The data model is based on maps and features API and PHP Library Google-scale storage and retrieval http://googlegeodevelopers.blogspot.com/2009/05/introducing-google-maps-data-api-in.html
  • 69. Conclusion Android is well suited for continuous location apps. The Android Market has 4,000 apps for 1,000,000 phones. Google has done a lot of the work in acquiring and storing location. Location apps are fun!