The first beta of Android Q is available now for any Pixel device, including the first-gen Pixel and Pixel XL — Google says it extended support to those models due to popular demand.
With Android Q, the OS gives users even more control over apps, controlling access to shared files. Users will be able to control apps’ access to the Photos and Videos or the Audio collections via new runtime permissions. For Downloads, apps must use the system file picker, which allows the user to decide which Download files the app can access. For developers, there are changes to how your apps can use shared areas on external storage. Make sure to read the Scoped Storage changes for details.
Android Q will prevent apps from launching an Activity while in the background. If your app is in the background and needs to get the user’s attention quickly — such as for incoming calls or alarms — you can use a high-priority notification and provide a full-screen intent. See the documentation for more information.
limiting access to non-resettable device identifiers, including device IMEI, serial number, and similar identifiers. Read the best practices to help you choose the right identifiers for your use case, and see the details here. We’re also randomizing the device’s MAC address when connected to different Wi-Fi networks by default — a setting that was optional in Android 9 Pie.
Control over location
With Android Q, the OS helps users have more control over when apps can get location. As in prior versions of the OS, apps can only get location once the app has asked you for permission, and you have granted it.
One thing that’s particularly sensitive is apps’ access to location while the app is not in use (in the background). Android Q enables users to give apps permission to see their location never, only when the app is in use (running), or all the time (when in the background).For example, an app asking for a user’s location for food delivery makes sense and the user may want to grant it the ability to do that. But since the app may not need location outside of when it’s currently in use, the user may not want to grant that access. Android Q now offers this greater level of control.
Foldable devices have opened up some innovative experiences and use-cases. Google has made number of improvements in Android Q, including changes to onResume and onPause to support multi-resume and notify your app when it has focus. resizeableActivity manifest attribute works, to help you manage how your app is displayed on foldable and large screens.
When a user wants to share content like a photo with someone in another app, the process should be fast. In Android Q It will be quicker and easier with Sharing Shortcuts, which let users jump directly into another app to share content. The Sharing Shortcuts mechanism is similar to how App Shortcuts works, new API is also supported in the new ShareTarget AndroidX library. This allows apps to use the new functionality while allowing pre-Q devices to work using Direct Share.
You can now also show key system settings directly in the context of your app, through a new Settings Panel API, A settings panel is a floating UI that you invoke from your app to show system settings that users might need, such as internet connectivity, NFC, and audio volume. For example, a browser could display a panel with connectivity settings like Airplane Mode, Wi-Fi (including nearby networks), and Mobile Data. There’s no need to leave the app; users can manage settings as needed from the panel. To display a settings panel, just fire an intent with one of the new Settings.Panel actions.
Dynamic depth format for photos
Many cameras on mobile devices can simulate narrow depth of field by blurring the foreground or background relative to the subject. They capture depth metadata for various points in the image and apply a static blur to the image, after which they discard the depth metadata.
Starting in Android Q, apps can request a Dynamic Depth image which consists of a JPEG, XMP metadata related to depth related elements, and a depth and confidence map embedded in the same file on devices that advertise support. Requesting a JPEG + Dynamic Depth image makes it possible for you to offer specialized blurs and bokeh options in your app. You can even use the data to create 3D images or support AR photography use-cases in the future.
How to get Android Q Beta?
you can enroll here to get Android Q Beta updates over-the-air, on any Pixel device ( Pixel 3, Pixel 2, and original Pixel). Downloadable system images for those devices are also available. If you don’t have a Pixel device, you can use the Android Emulator, and download the latest emulator system images via the SDK Manager in Android Studio.