Zygote
API 13 · HONEYCOMB_MR2

Android 3.2 Honeycomb

Screen-size compatibility for phone apps on tablets

released
2011-07-15
runtime
Dalvik
design
Holo
status
stable

What shipped

  • Screen-size compatibility for phone apps on tablets
  • SD card support for files
  • New zoom controls for tablets

Platform internals

What changed underneath the APIs. These are the changes this site's architecture modules explain in depth.

  • New screen-size resource qualifiers for compatibility scaling

What developers had to deal with

  • New screen-size resource qualifiers
  • Widget size APIs

Behaviour changes

The full archive has every recorded change with its migration advice.

targetingnotifications

The notification permission is a runtime permission

POST_NOTIFICATIONS is a runtime permission on Android 13; apps must ask before posting notifications.

What to doRequest POST_NOTIFICATIONS and handle denial gracefully.

targetingstorage

Granular media permissions

READ_MEDIA_IMAGES, READ_MEDIA_VIDEO and READ_MEDIA_AUDIO replace READ_EXTERNAL_STORAGE for media access.

What to doRequest only the media types you need instead of broad storage access.

targetingmedia

Photo picker is the recommended way to read images

The system photo picker gives access to selected media without a permission.

What to doAdopt the photo picker for choosing images and videos.

targetingbackground

Battery resource utilisation

Apps that use excessive CPU or wake locks are restricted and their background work is cut.

What to doCut unnecessary wake locks and test with battery historian or a trace.

all appsprivacy

Clipboard access is hidden

When an app reads the clipboard, the system shows a toast and hides the content if the app is not the default IME or focused.

What to doRead the clipboard only on explicit user action.

all appsmedia

Background audio is restricted

Apps that play audio without a foreground service can be stopped.

What to doUse a mediaPlayback foreground service for background audio.

targetingui

Themed app icons

Apps targeting Android 13 can provide a monochrome icon layer so the launcher can theme it.

What to doAdd a monochrome drawable to the adaptive icon.

targetingruntime

Per-app language

Users can set a language per app, so the app must handle locale changes at runtime.

What to doUse AppCompatDelegate.setApplicationLocales or the LocaleManager API, and handle configuration changes.

all appssecurity

Restricted settings for sideloaded apps

Apps installed from outside a store may have restricted access to accessibility and notification-listener settings.

What to doDistribute through Play, or guide users through the restricted-settings flow.

Where this sits

Release 13 of 37 API levels, by date
Headline features
3
Architecture changes
1
Developer changes
2
Sources cited
2

Kernel

This release shipped on Linux kernel versions 2.6.36. Kernel versions vary by device.