Android 5 Features and APIs
Last modified on October 22nd, 2014 by Joe.
In this article we will go through the list of features and APIs launched for Android 5 codenamed Lollipop. This is written as an introduction for Android developers. The
targetSdkVersion is 21 for Android 5.0. Android 5 is a huge release for developers.
Similar to Java 8 features, Android 5 brings in mammoth set of classes and lot of whole new packages. This will open up possibilities for many innovations. This page is a summary of the detailed release document provided by Android.
- ART is now the default Android runtime. ART was introduced in Android 4.4 as optional runtime and Dalvik was the default one. With ART we get, AOT compilation, improved GC and debugging support.
- For Android Native Development Kit (NDK) developers, you have got support for 64-bit systems.
Android 5 User Interface Features
- Support for new material design. The Android apps we create can include material theme and other new features related to material design.
ActivityManager.AppTask is a new API that enables to show more than one recent tasks. This allows the user to juggle between multiple tasks concurrently.
- WebView updated to Chromium M37 as the default version. This adds support for WebRTC, WebAudio and WebGL from Android 5.
android.media.projection is a brand new package in Android 5.0, with this the Android apps can capture screens and share them.
Android 5 Notifications Features
- The color, look and feel of notifications are changed to suit the material design.
- This is one important aspect in notification. Now there are API supports to give the ability to control what information is public and what can be showed in a notification. Since notifications are shown above the locked screen.
NotificationBuilder class, the privacy level of information can be set.
- Categories, priorities and grouping based on person can be done for notifications.
- Introduced Heads-up notifications which appear in a small floating window above the current activity when the device is unlocked.
Android 5 Graphics Features
- Android 5 brings support for OpenGL ES 3.1.
- Added to OpenGL ES 3.1, we get an extension pack that gives native support for advanced graphics functionality like tessellation, geometry shaders, ASTC texture compression format and lot more.
Android 5 Media Features
android.hardware.camera2 new package introduced, which provides an interface to individual camera devices connected to Android device. Now the Camera class is deprecated. This package brings in whole lot of classes that gives infinite possibility to control every aspect of a camera through the API.
AudioTrack class is enhanced with capabilities for greater dynamic range with more consistent precision.
Notification.MediaStyle introduced. This gives the ability to control the notification style for media playback notifications.
- In sound and vibration, some new APIs are introduced as a better alternate to the existing APIs. For example, use
Notification.Builder instead of using
MediaSession API introduced, which allows interaction with media controllers, volume keys, media buttons and transport controls. Existing
RemoteControlClient is now deprecated.
android.media.browse is a completely new package introduced in Android 5. This gives the ability for apps to browse media library provided by other Android apps.
Android 5 Storage Features
- Existing Storage Access Framework is enhanced with more features like entire directory subtree level operations support.
- This brings an array of features at subtree level.
- Package-specific directories on shared storage.
Android 5 Wireless and Connectivity Features
- Got new multi-networking APIs that allows the an Android app to interact with specialized networks like SUPL, MMS and carrier-billing network.
- Now an Android device can be made to act as a LE peripheral device. This was an enhancement over Bluetooth Low Energy features introduced in Android 4.3.
- android.bluetooth.le is a new package introduced in Android 5 which has huge number of features related to Bluetooth LE.
- NFC features are enhanced.
Android 5 Project Volta Features
- Introduces new features for battery usage optimization.
JobScheduler is a new class that allows to optimize battery life.
dumysys batterystats command is new and generates lot of stats related to battery usage.
Android 5 Enterprise Features
- Manage provisioning features that allows to create and manage multiple profiles.
- Device owner app can be deployed that is a type of administrator and has the ability to create and manage secondary users.
- Screen pinning is a new feature that completely blocks the active activity from the outside world. Like notifications, status are blocked. User cannot exit from the task till the app exits the pinning mode.
Android 5 Printing Features
- PdfRenderer is a new class introduced in Android 5.0. This enables rendering a PDF document. PDF documents can be rasterized for printing.
Android 5 System Features
android.app.usage is a brand new package introduced in Android 5.0. This new API enables us to access app usage history.
- getRecentTasks() deprecated and
Android 5 Testing and Accessibility Features
- New methods added fro capturing frame statistics for window animations and content. This will help to test if the user is having smooth experience with the app.
- New method
executeShellCommand() introduced to allow use the shell based tools like
- Tools to test how the accessibility services and APIs are used in the app.
- New Voice class that allows an app to use voice profiles in fine grained manner.
Android 5 Input Method Editor Features
- APIs to enable easy switching between different IMEs available in the Android system.
Android 5.0 Lollipop is a huge release for Android developers. We have got greater control than ever. Lets continue to build amazing Android apps. Thanks to the Android team for this wonderful release.