Android 13 Beta version released, many highlights not to be missed

作者 / Dave Burke, VP of Engineering

April is here, and we are still making steady progress to improve the functionality and stability of Android 13 . Android 13 is built around our core themes of privacy and security, developer productivity, and support for tablets and large-screen devices . Today, we move into the next phase of the release cycle, bringing you the first beta of Android 13.

For developers, Android 13 has a lot to explore, from new notification permissions and privacy features like the photo picker, to APIs that help you build great experiences like theming app icons, adding tiles to quick settings, and individual App language preference), as well as features such as Bluetooth Low Energy (LE) audio and MIDI 2.0 hardware via USB. In Beta 1 we also brought many improvements, such as adding new permissions to give you more granular access to media files, improving the audio routing API, and more. We'll be sharing more at Google I/O on May 11-12, so be sure to tune in!

We invite you to try out today's beta version and welcome more early adopters to join us and provide us with feedback . You can get started with Android 13 Beta 1 today on supported Pixel devices, by simply signing for the beta and getting the update OTA. If you already have the Developer Preview of Android 13 installed, your device will automatically get the update for this and subsequent releases via OTA. As always, we also support downloading to Pixel devices and use in the Android emulator . Visit the Android 13 developer site for more details on getting started developing and testing apps.

Beta 1 update at a glance

We continue to focus on privacy and security while bringing new APIs to help you build great experiences for your users. Beta 1 includes the latest updates to our previously announced features such as new notification permissions, photo picker, themed app icons, improved localization and language support, and more. Beta 1 also introduces some new features, so try it out and share your thoughts with us!

Provide more granular permissions for media file access - Previously, when an app wanted to read shared media files in local storage, it needed to apply for the READ_EXTERNAL_STORAGE permission, which allowed access to all types of media files. To bring more transparency and control to users, we will introduce a new set of permissions that provide a more granular range of options for accessing shared media files.

With the new permissions, apps can now request access to certain types of files on shared storage:

Once the user grants this permission, the app will have read access to the corresponding media file type. To simplify the user experience, if an app requests both the READ_MEDIA_IMAGES and READ_MEDIA_VIDEO permissions, the system will only display a dialog to grant these permissions. If your app needs access to shared media files, migrate to these new permissions when your app targets Android 13. Please visit the official documentation for details.

Improved Keystore and KeyMint error reporting - Keystore and KeyMint now provide more detailed and accurate error indications for apps that generate keys. We've added an exception class hierarchy under java.security.ProviderException that contains Android-specific exceptions, including Keystore/KeyMint error codes , and whether errors can be retried. You can also modify the methods of key generation, signing and encryption to throw new exceptions. Improved error reporting can give you the information you need to retry key generation.

Predictive Audio Routing - To help media apps determine how their audio is routed, we've added a new audio routing API to the AudioManager class. The new getAudioDevicesForAttributes() API allows you to retrieve a list of devices that may be used to play the specified audio, and we've also added the getDirectProfilesForAttributes() API to help you know if the audio stream is ready for direct playback. You can use these new APIs to choose the most appropriate AudioFormat for your audio track .

App compatibility

If you haven't tested your app's compatibility with Android 13, now is the time to start! With Android 13 in beta, we've opened up early access users and developers to experience it. This means that in the coming weeks you'll see more users experience your app on Android 13 and submit issues they find.

For compatibility testing, install your production app from Google Play or another source on a device or emulator running the Android 13 Beta and test all of the app's processes. Please use the Behavior Change Checklist to identify test priorities. Please release an updated version as soon as possible after all identified issues have been resolved.

With the beta release, we are getting closer to the platform . At that time, the list of app-oriented system behaviors, SDK/NDK APIs, and non-SDKs will be finalized. You'll be able to complete final compatibility testing and release a fully compliant app, SDK or development library. See the release schedule for details .

Get started with Android 13 today

Whether you want to experience Android 13 features, test apps, or submit feedback , you can start with this beta release. Beta versions of this and subsequent Android 13 and feature updates are available OTA by simply enrolling in the beta with a supported Pixel device. If you have already installed the previous Developer Preview, you will automatically get these updates. To start developing, set up your SDK .

For wider testing on more supported devices, install and experience the Android 13 Beta via the Android GSI image. If you don't have a device, you can also test on the Android emulator. Just download the latest emulator system image via Android Studio 's SDK manager.

Visit the Android 13 developer site for details on getting the beta.

You are welcome to click here to submit feedback to us, or to share what you like, issues you find. Your feedback is very important to us, thank you for your support!

{{o.name}}
{{m.name}}

Guess you like

Origin my.oschina.net/androiddevs/blog/5520483