Tuesday 10 May 2011

Google I/O 2011

Some brief notes on the Google I/O 2011 keynote this afternoon… It started kind of dull with Android stats that were pretty good but still seemed to be catching up on Apple, then gradually got better and better.

Google really does want Android to be “one OS everywhere” (I guess running “one web” webapps…) and the UI is improving. I look forward to the media content coming across to countries other than the USA, though the lack of any mention of music or movie labels leaves me in some doubt as to when this will happen. The presentations neatly glossed over the time involved in syncing music and movies between devices and the online service — even on a home wired network the data would take a long time to upload. And there was no mention of syncing between devices on the same LAN like Dropbox either.

The big news for me, however, was the accessories and android@home. By making it so cheap to add hardware integration with Android devices, there could be a real explosion of new products and the home automation market could finally break out of eye-wateringly expensive or home hacker territory. I’m really looking forward to more detail on android@home, but there’s nothing released yet…

android updates

  • widgets can now be stretched
    • scrollable -> resizeable (just change XML)
  • android can now be a USB host
    • keyboards, mice, game controllers
  • google tv market open for devs this summer
    • will be based on android 3.1
  • icecreamsandwich coming Q4
    • advanced UI
    • APIs to help scale UI
    • action bar able to reconfigure itself for available space


  • movies and books now available through android market
    • can watch on web or on android device (e.g. android TV…)
    • seems to be US only (like Music)
  • google music
    • cache music recently played
    • can “pin” music just like on movies to make available offline
    • downloads in background
    • 20,000 songs can be added to library
    • free in beta…
    • new music app works with android 2.2 and above


  • new devices will receive latest updates for 18 months after first launch
    • (if the hardware allows)
    • guaranteed to come through reasonably quickly
  • android open accessory
    • plug in an accessory
    • phone gets taken to app (or to android market to download it)
    • supports USB now and bluetooth in future
    • hardware design toolkit based on Arduino
  • android @ home
    • android @ home framework
    • new low cost connectivity protocol for non-wifi devices
    • why not existing??
    • partnering with several industry players
    • LED lights & switches
    • tungsten demo with NFC chips in CDs cannot work unless Google get record label deals…

new devices

  • Samsung 10.1 tab: 720p, 565g, 10.1”
    • lighter than iPad 2, at least as powerful…
    • just waiting for better interface

Londroid: Payment and monetization

The first of two Android blog posts — this one’s from the Londroid Meetup on April 21st themed on Payments.

There were three presentations from three competing payment platforms, and they presented in roughly the order I’d prefer to use them (in their current state): Paypal is very much sorted for Android — they make it easy and it looks impressive and secure; Google’s in-app billing is still new and feels unfinished; and Paythru is simply a browser-based system that’s designed for mobile, but no way near as slick as the other two.

However, talking to the Paythru rep later, they have some interesting tricks up their sleeve — like being able to take payment but not actually charge it to the card for several days (useful for synchronising multiple payments, or buying Olympics tickets). Google will also be beefing up their billing system over the next few months, so Paypal won’t have an easy ride.

Integrating Paypal In-App and Mobile Browser Payments on Android

Anthony Hicks anthony@x.comPaypal

  • paypal in EU biggest in UK, then DE, then FR
    • small numbers in scandinavia, spain & italy
  • now have a bank license in Europe
  • iPhone, iPad, Android mobile payment library
    • all in-app (no browser)
  • adaptive payments
    • split payments between multiple parties
    • make chains of payments
    • make a billing agreement and charge them later
    • pre-approval — can request payments without taking people to paypal
    • customer agrees to pay up to £X per month
    • take commissions on payments
  • mobile express checkout also available (browser based)
    • optimised for webkit
    • can login with mobile number and pin (as well as with email/password)


  • payment button & pages have to be consistent
    • paypal won’t let you change them
  • language only affects the login page
    • paypal then switch to user’s language
  • process to approve:
    • get sandbox ID
    • submit test app to paypal
    • get live app ID
    • rebuild app (and don’t change it too much!)

Android In-App Billing

Richard Hyndman @geekyouupAndroid Developer Advocate, Google

  • available on 1.6 and above (since handled by Android Market app)
    • have to have opened the Market app
  • two kinds of purchase:
    • Managed: once per account
    • can query market to find out if the purchase has been made
    • Unmanaged: unlimited per account
  • get the Google Market Billing package from the ADK
  • usage:
    • bind to service
    • check billing supported (requires network) — can then ask for upgrade
    • send billing request and put up billing page activity
    • set up billing receiver
    • purchase notify tells you something has changed, but you have to ask what…
    • quite a few back and forths…
  • security
    • recommend that you put validation on server (urban airship?)
  • use android.test.purchased as your SKU then it won’t get billed!
  • use test accounts for testing…
  • apparently the dungeons example has two or three classes you don’t actually need


  • subscriptions not in API yet…
  • shared preferences can now be synced to the cloud
  • to prevent copying to another phone, would have to check market when app launches
  • currency tied to the google account, not to the IP location
  • can only buy digital content/services

Paythru - Money on the Move


  • paythruMONEY — allows people to manage a card from their mobile
  • can move money with a single-use QR code
  • provides digital cash (user is logged in but retailer sees no identification)
  • a few lines of code:
    • launch a browser to a specific URL
    • get the app to launch with a return URL when the paythru mobile web checkout has completed