Android Versions A-to-Z

Best Practices & Guides

Overview

Every new AndroidTM version brings improvements to security, usability and performance. For developers, it’s important to understand how an app will behave when running on a newer version of Android. Behavioural changes generally fall into two main categories:

  • Those affecting only apps that update the target API level
  • Those affecting all apps running on the new version

To help ease the migration to newer versions of Android, Google and Zebra offer the the resources described in this guide. Links are provided to each.

Upgrading Android

Developer Resources from Google

For transitioning from an older API level to a newer one, Google’s guidance on “meeting the Google Play target API level requirement” is an easy-to-read, bulleted guide that helps ensure that you won’t miss any of the main points. Google’s guidance on behaviour changes for all apps isn’t found in a single list, but instead is distributed in the change details published with each new Android version.

Google's Change Details:

Since changes are cumulative, reading each of these in turn could offer a more complete picture of the changes to consider when moving from one version of Android to the next. Google’s documentation is comprehensive, but is often aimed at developers targeting consumer use cases. This can sometimes make it hard to identify which features are most pertinent to Zebra developers targeting enterprise devices.

Developer Resources from Zebra

For each new release of Android, Zebra publishes tailored guidance highlighting changes in the release of most interest to enterprise apps and use cases. The main points of each guidance article are bulleted below; links are provided to the comprehensive information in each.

Android 13:

When migrating from Android 11 to Android 13, learn about the most relevant challenges affecting your enterprise applications and the features that have been specifically designed by Zebra to make life easier for enterprise developers.

What’s New in Android 13 and the Impact on Zebra Developers:

  • Foreground Services and Alarm Limitations
  • File Browser App
  • Staging for Developers
  • Secure Storage Manager
  • Runtime Permissions

Android 12:

At the time of the release of Android 12 in 2021, we at Zebra Technologies made a decision to focus our resources on consolidating Android 11, delivering it to customers with newly released technologies such as 5G and Wi-Fi 6. The reasons that Zebra skipped Android 12 centered on lack of customer demand for the features being implemented at the time. But for our developers and partners, it’s important to keep an eye on the most impactful changes made in Android 12, because all will be included on top of those of Android 13, which will be available for Zebra devices in 2023.

What's New in Android 12 for Zebra Developers:

  • Material You
  • Storage Changes
  • Secure LockScreen Notifications Actions
  • Splash Screen APIs
  • Microphone, Camera Toggles & Indicators
  • Custom Notifications
  • Toasts
  • New Bluetooth Permissions
  • Access Fine Location Permission Changes
  • App Hibernation Changes
  • Motion Sensors Refresh Limit
  • Misc Performance Changes
  • Concurrent Peer to Peer + Internet Connection
  • Safer Components Exporting
  • Mutability of Pending Intents
  • Activity Lifecycle
  • System Dialogs
  • Enterprise Changes
    • Work Profile
    • Company Owned Devices
    • Deprecations

Android 11:

  • Scoped storage updates
  • Permissions changes: runtime, location, System Alert Window, and App Usage Stats
  • Package visibility
  • Wake locks
  • Maps v1 shared library
  • Foreground service changes
  • MAC address updates
  • Non-SDK interface restrictions
  • Changes to Play Store requirements
  • Captive portal API support
  • Wireless debugging
  • Data access auditing
  • API changes

Android 10:

  • Scoped storage
  • User control over background location
  • Permissions with legacy applications
  • Warnings for apps targeting older Android versions
  • Restrictions on non-SDK interfaces
  • Changes to the Google Play Store
  • Starting activities from the background
  • Access to device identifiers
  • Settings panels
  • Move to AndroidX
  • Smart replies

Android 9.x Pie:

  • Standby buckets & adaptive battery
  • Restricted applications
  • Battery saver improvements
  • Lock-down enhancements
  • Ephemeral users
  • Over-the-air updates
  • Notification enhancements
  • Privacy & permissions
  • Restrictions on use of non-SDK interfaces
  • Changes to the Google Play Store

Android 8.x Oreo:

  • Background service limitations
  • Limitations on receiving implicit broadcasts
  • Reduced update frequency of location APIs for background apps
  • Notification enhancements
  • Pinning shortcuts & widgets
  • Companion device pairing
  • Changes to the Google Play Store

Android 7.x Nougat:

  • Multi-window support
  • Notification enhancements
  • Doze Light / Doze on the go
  • Chrome update also updates the WebView
  • App shortcuts

Android 6.x Marshmallow:

  • Runtime permissions
  • Doze mode & app standby
  • Copy / Paste & sharing features
  • Access to device identifiers
  • NFC
  • Adoptable Storage
  • Encryption
  • Factory Reset Protection
  • Notification shade & quick settings
  • Notification long press

Conclusion

The Android device that runs your apps will be updated regularly, so it’s important that enterprise developers keep themselves informed as to how the changes coming with each new Android version will affect application application performance and behavior. While Zebra helps simplify the physical update process through its LifeGuard security update program, Zebra’s engineering department continues to provide guidance and best practices to help developers keep their apps behaving properly.