The Donut Has Landed

android_donut_logoThe Android 1.6 SDK, based on space-age “donut” technology, is now available for Android application developers.

The biggest good news is that very little has been outright removed in this release, from my quick analysis of the SDK differences report. While that may not sound like much of a win, trying to fix where your app is broken due to removed APIs (think the System.Secure change from Android 1.5) can be rather troublesome.

We get lots of goodies in this release, such as gestures, text-to-speech, yet more search APIs, and more support for accessibility. Users get a faster camera, VPN support, and a piggy application blame system…er, I mean…battery usage monitor, to help identify apps that are chewing up CPU cycles.

However, this release will introduce two headaches.

The small headache is that you now need a permission to access the SD card (WRITE_EXTERNAL_STORAGE). So long as your application is written to use API Level 3 (a.k.a., Android 1.5), you will not need the permission. As soon as you move up to API Level 4 or beyond, to take advantage of new APIs and such, you will need to request this permission. This is a minor bother, but one some developers will miss.

The bigger headache will be supporting new screen sizes. QVGA (smaller) and WVGA (bigger) are now officially supported. Moreover, you will want to augment your applications to declare what screens it supports explicitly and that you have tested, via a new manifest element (<supports-screens>). Screen sizes you have not tested will be run in “compatibility mode”, meaning Android will do its level best to make your application usable, but YMMV.

Devices will start getting Android 1.6 within weeks, though exact timetables are presumably up to device manufacturers and, where relevant, mobile carriers.

Watch the Android Developers Blog for posts describing some of the new donut-ized features in Android 1.6 and how to use them. And, of course, watch this space for further developments.

Mark Murphy is the founder of CommonsWare and is the author of The Busy Coder’s Guide to Android Development, The Busy Coder’s Guide to Advanced Android Development, and Android Programming Tutorials.

  • kris

    So the question is..will the g1 be getting this update?

  • @kris: No official word right now. With the statement of "You can expect to see devices running Android 1.6 as early as October", it may be a bit before we get a firm statement one way or the other from T-Mobile.

  • kris

    I don’t understand why we can’t just remove cupcake and load know what I mean?

  • The question for me is: Why wasn't this SDK made available before the submission deadline to ADC2?

  • Mark,
    Is the WRITE_EXTERNAL_STORAGE really required? From my (limited) testing when upgrading an app, the app was able to write to the SD card via emulator without making any changes to the AndroidManifest. The app was built with Android1.6 and the emulator was run with Android1.6 runlevel 4.