Google has released Android 11 as a preview for developers, who can now adapt their apps to the next version of Android and provide feedback in advance to help Google improve the robustness of the version. Android 11 indeed includes many behavioral changes that could affect existing apps, as well as new features and APIs and new privacy options.
Android 11 will support a host of new APIs for media management, connectivity, data sharing, machine learning and more.
The MediaStore API now supports performing batch operations on media files, including granting write access to files, creating “favorite” files and trash files or deleting them immediately. Apps can also use raw paths to access files to simplify the use of third-party libraries. To improve debugging performance, developers can load GLES and Vulkan graphical layers into the native application code.
ResourceProvider APIs allow apps to extend the way resources are searched and loaded. This is intended for loading custom resources, e.g. using a specific directory instead of the application APK. In addition, C / C ++ developers will be able to decode the image directly using NDK
Machine learning support is another area where Android 11 offers new features, notably the addition of support for the new TensorFlow Lite quantization scheme, new ML controls for QoS and simplified data management between components to reduce data redundancy. Biometrics support is also extended with the new `BiometricManager.Authenticators interface.
Android 11 also introduces several privacy changes, including applying scoped storage, background location access, and a new one-off authorization model that should make it easier for users to access location, microphone, and camera in one step.
All of the privacy changes listed above affect existing apps and Google explicitly requires developers to verify that their apps are compatible with them. But Android 11 introduces some other behavioral changes that could have an impact on existing apps. For example, the
JobScheduler The API now applies call limits to identify potential performance problems; furthermore, when the user twice denies a specific authorization, the operating system assumes that it means “do not ask again”; and last but not least, the
ACTION_MANAGE_OVERLAY_PERMISSION now always displays the top level Settings screen, while it was used to bring the user to an app specific screen.
The number of changes made by Android 11 is too long to be completely covered here, so don’t miss the official documentation for full details. Also keep in mind that the development of Android 11 is not yet complete and Google plans to share new preview versions in the coming months.