Here is my big thread on what’s new in Android 14 Developer Preview 1. Android 14 DP1 is a MAJOR release so there are a LOT of new features and changes 👀 (thread):
“Fast pair” settings has been re-added to Settings > Connected devices > Connection preferences. These settings used to be available in early Android 13 previews but were removed in Beta 3.
Fast Pair, short for Google Fast Pair Services, is currently part of Google Play Services. Android 13 introduced a new “Nearby” Mainline module to AOSP that contains the code necessary to scan and pair nearby Fast Pair devices.
Under Settings > System > Multiple users, there’s now an “allow guest to use phone” toggle that lets you control whether the guest profile can make phone calls/send text messages. If you enable it, your call history is shared with the guest user.
In Developer options, there’s now a “disable child process restrictions” toggle. Enabling this disables the monitoring of so-called “phantom processes”, child processes forked by app processes that the framework couldn’t track the lifecycle of.
This setting is simply a more accessible way to disable phantom process monitoring, which previously required flipping a feature flag that’s only visible on userdebug builds or flipping that same flag via ADB.) blog.esper.io/android-12l-de…
Also in Developer Options, “NFC verbose vendor debug log” and “NFC NCI unfiltered log” have been added to allow for capturing more detailed logs on NFC packets. Enabling these requires a reboot.
In Settings > About phone, the “device details” section now has an EID option. You previously had to tap “SIM status” to see the EID. Also, the EID and IMEI are now hidden on this page by default. You have to tap the item to show the value.
Here's a first look at the enhanced predictive back gesture in Android 14:
Android 14 will now warn you when you install an app that targets API level 27 or lower (ie. Android 8.1 or older). The threshold that triggered this warning was previously set at API level 22 (Android 5.1) in Android 10. xda-developers.com/android-q-warn…
As I mentioned in the other thread, Android 14 by default will also block you from installing any app that targets API level 22 (Android 5.1 Lollipop) or lower. You can ignore the warning when you install an app that targets API 23 - 27.
Android 14 adds key layout files for the Sony Playstation DualSense Edge Controller (Vendor_054c_Product_0df2.kl) and the SteelSeries Stratus+ (Vendor_1038_Product_1434.kl). These define the mapping between button presses and Android input events.
For the Sony Playstation Dualsense Edge Controller in particular, however, your device will also need new hid-playstation kernel patches to properly support the controller. This is because the DualSense Edge has a new product ID, so the existing hid-playstation driver won’t work.
Android 14 may let you pick which photos and videos apps have access to through the Photo Picker, EVEN IF the app asks for full gallery access/doesn't use the Photo Picker! Say bye bye to giving apps like Facebook/Twitter access to your entire gallery.
The battery usage page has been tweaked. You’ll now see the screen time since last full charge below the battery graph. The “app usage” & “system usage” sections are now shown separately; the dropdown menu lets you switch between a battery breakdown by apps or by system.
The Battery Saver page now shows the Extreme Battery Saver toggle so you don't have to open a subpage. The "Adaptive battery" toggle has also been moved here. "Set a schedule" has been renamed to "schedule and reminder".
The "Schedule and reminder" page, where you can determine when Battery Saver activates, has removed "based on your routine" as an option. Also, the minimum battery % threshold has been raised to 20% from 10%, and a new "battery saver reminders" toggle has been added.
I previously reported that Health Connect might become part of the Android OS in Android 14, and I was right! Android 14 DP1 ships with a new Mainline module called Health Connect that contains the Health Connect app.
Health Connect provides the AOSP compatible version of the Health Connect app. Since this is baked into the OS, you won’t need to download the app from Google Play anymore, plus it’ll work without GMS. Also, Google's working on a migration path.
Other new Project Mainline (APEX) modules include: Config Infrastructure, Cronet, Device Lock Controller, and Remote Provisioner. In order, these:
Config Infrastructure provides an updatable DeviceConfig implementation. This API is used by Google Play Services to remotely toggle flags that affect feature rollouts.
Cronet is the Chromium network stack made available to Android apps as a library. The module itself is currently empty, a stub APEX basically, though.
Device Lock Controller contains the Mainline version of the Google app by the same name, but with a different package name. The app in question is used to lock down financed phones. xda-developers.com/google-device-…
Remote Provisioner contains the Remote Key Provisioning app and system service. For context on what Remote Key Provisioning is: blog.esper.io/android-13-dee…
A win for security: Android 14 makes the OS's root store updatable via Google Play! As I previously reported, the Conscrypt module has been updated with a copy of the root store. Conscrypt is updatable via Google Play System Updates.
In addition, Android 14 removes the following root certificates from its root store:
And Android 14 also adds the following root certificates to its root store (CC @letsencrypt because ISRG Root X2 has been added):
“Turn screen on” under Settings > Apps > Special app access no longer lists any apps as holding this permission. This is because this screen used to list every app with the WAKE_LOCK permission but now only lists apps that request the new TURN_SCREEN_ON permission.
The TURN_SCREEN_ON permission, as its name implies, “allows the app to turn on the screen.” It has a protection level of “appop”, so it can be granted/revoked by the user through “special app access” settings.
Android 14 will let you grant secondary users admin privileges, which lets them manage other users, modify device settings, and even factory reset the device. This feature isn’t enabled by default, however. Android Automotive also already offers this feature.
Android 14 is adding a dedicated settings page for hearing devices at Settings > Accessibility > Hearing devices. Here you can pair a new hearing aid device, enable a shortcut to these settings, and toggle "hearing air compatibility". This page right now is guarded by a flag.
"Safety Center" no longer has dropdowns for every item. Instead, tapping an item opens a subpage.
The “Reset Wi-Fi, mobile, & Bluetooth” settings has been split up into “Reset Mobile Network settings” and “Reset Bluetooth & Wi-Fi”.
Android 14 is adding a new "apps installed in the background" page that tracks apps your OEM or carrier may have silently installed in the background. You can then quickly uninstall any such apps from this page.
Android 14 is adding a user-facing toggle to enable Memory Tagging Extension, a hardware feature available for Armv8.5+ CPUs that can help mitigate severe memory safety bugs.
On Pixel devices under Settings > About phone > Legal information, there's a new entry for "Source code." Tapping it leads you to this webpage: support.google.com/pixelphone/ans…
There are new settings for remapping modifier keys and toggle touchpad gestures, among other improvements to keyboard input in Android 14!
Android 14 seems to add support for a new version of the USB Gadget HAL: v2.0 can report whether a connected USB-C cable supports DP Alt Mode.
May we finally get a Pixel with video output via USB-C? Wishful thinking on my part, but with all the recent desktop mode improvements..
Two wearable related changes:
1) An update to the Ambient Context API (used on Pixel 6+ for privacy-preserving cough & snore detection) to allow for receiving Ambient Context events from a remote connected wearable device. The system will bind to a "wearable sensing service."
The wearable may need to be running Wear OS 4 based on Android 13 for this to work, however.
2) Under the Settings.Clockwork namespace, there's a new DYNAMIC_COLOR_THEME_ENABLED value, suggesting Android 13-based Wear OS 4 will support dynamic coloring.
Watchfaces on Wear OS can expose their colors to the system using the Wear Watchface API:
Android's Virtual Device system API, which powers the still-unreleased app streaming to Chromebook feature in Android 13, is adding support for getting/sending camera streams and sensor data.
Two new Companion Device profiles have been added: Glasses and Nearby Device Streaming. The former will let an app that manages your connected smart glasses have access to Phone, SMS, Contacts, Microphone, and Nearby devices permission.
The latter will let an app also stream content to nearby devices through the CREATE_VIRTUAL_DEVICE, ADD_TRUSTED_DISPLAY, and ADD_ALWAYS_UNLOCKED_DISPLAY permissions. Glasses role is open to any app, but Nearby Device Streaming is system-only.
Now this is just a guess, but with all the rumors surrounding Google's foray back into AR smart glasses, it makes sense to me. This could be used to simplify setup/permission granting for AR glasses. The latter would let you stream an app from your phone to those glasses.
You can already stream apps to the Google Glass Enterprise Edition 2 if you have a Pixel 6+ on Android 13. The companion app uses the virtual display APIs I mentioned before.
@Deadman_Android kind of got it working and might be able to share more details.
I'm not really sure how this would work, but there's a new feature that will allow you to toggle the use of "null cipher" encryption for cellular connectivity. This could be related to mobile <-> tower encryption, adding some noise to the data that's sent.
The toggle has the title "allow less secure connection". Its description reads: "May improve your signal in some locations. For emergency calls, less secure connections are always allowed."
I'm not really sure what use this has, but media_codecs.xml in the MediaCodecs module now mentions a software AV1 encoder. I don't actually see the sw AV1 enc in lib. I wonder if they're using dav1d or the reference AOM enc? aomedia.googlesource.com/aom/+/refs/hea…
Still not entirely sure what "satellite support" entails in Android 14, but there is going to be a new HAL to implement: android.hardware.radio.satellite.IRadioSatellite. There's an SELinux policy for it, but I don't see much else yet.
Even though installing apps targeting an API level older than 23 should be blocked in DP1, as noted in the official blog post, it doesn't look like it's actually working for me.
(RIP Flappy Bird, you had a good flap.)
How long can/should I keep this thread going for, lol? Anyway, here's another new feature that's being tested: Regional preferences.
Android 14 is preparing to add a new option in settings to convert a physical SIM to eSIM, shown below, as well as an option to transfer an eSIM between devices.
Note, however, these do not do anything on their own. They depend on the system LPAd app, which on Pixel devices is just called "SIM Manager", to actually support this functionality.
New APIs in Android 14 allow third-party app stores to do "gentle updates", take ownership over updates of an app, and request preapproval from a user for installs.
Hey developers: You know that data safety section Google Play made you fill out? Well, double check that info, because it might appear right in Android 14's settings and permissions dialogs.
- New PM API to see if a device supports seamless refresh rate switching. I guess this will be a way to tell if a device supports VRR or not, but only if the OEM declares it. (Returns 'false' on my P6P right now).
- Another new PM API to determine if a device supports ultra-wideband (UWB) connectivity. I thought this already existed, but surprisingly not? The feature declaration already returns true on my P6P running Android 13.
- New API to determine where exactly the NFC antenna is on a device. This is already in AOSP, and it requires the OEM (of course) to define the location in the framework.
- There's a new DETECT_SCREEN_CAPTURE permission that "allows an application to get notified when a screen capture of its windows is attempted." There's no impl of this in DP1 beyond this new permission, though.
Yes, apps can already detect when you've taken a screenshot (Snapchat famously does it), but there's been no official API to do so: proandroiddev.com/detect-screens…
- New Telephony APIs to enable call streaming, ie. streaming a VOIP call to another device.
- New altitude converter API to convert "altitudes reported above the World Geodetic System 1984 (WGS84) reference ellipsoid into ones above Mean Sea Level."
- Framework APIs for Health Connect, DeviceLock, and AdServices are now available. Health Connect and Device Lock are new APEX modules in U. Not sure if Device Lock will be a Mainline module since it isn't mentioned in ModuleMetadata, but Health Connect is.
AdServices refers to the APIs that power the Privacy Sandbox features. Android 14 DP1 ships with extension SDK version 5 and thus supports Privacy Sandbox out of the box rather than needing a GPSU like Android 13 does.
There's a lot, lot more that I want to mention. I'll be posting more articles in due time!
Ah, actually, I missed a few things.
- A new API that lets apps know who started them, if the app that does the launching opts in.
- An API to get the advertised memory size (androidboot.ddr_size) from the bootloader which may differ from MemTotal (/proc/meminfo). This could be due to, say, the ODM reserving part of the memory for the TEE.
- A new intent to launch the system output switcher. The field EXTRA_PACKAGE_NAME specifies the package name of the calling app so the system can get the corresponding MediaSession for the switcher.
Android finally has a pop-up dialog for the Bluetooth Quick Setting tile! I previously spotted this in the QPR2 Beta 2 release, but it's now enabled by default in QPR2 Beta 3!
(Image credits: @Nail_Sadykov.)
Android 14 QPR2 Beta 3 is preparing to add a new "make all apps dark" toggle under Settings > Accessibility > color and motion. This option inverts the colors of apps that don't support a dark theme. This does the same thing as the developer option, just now available outside of dev options.
In the "Internet" panel, there's now a "Share Wi-Fi" button in the bottom left. Tapping this button opens the existing Share Wi-Fi page where a QR code is shown that others can scan to join your network, or you can tap "Nearby" to share your Wi-Fi credentials via Nearby Share.
Android 14 is rolling out for the Pixel 4a 5G and later starting TODAY! The update brings more customization, control, and accessibility features. If you haven’t been on the beta and want to know what new features are in Android 14, here’s a summary of the highlights:
Google says that several of the large-screen features originally planned for Android 14 were made available as updates to Android 13. This is because the Pixel Tablet and Pixel Fold shipped with Android 13 QPR3, so these features had to be ready for their launch.
Speaking of the Pixel Fold, Google Translate will soon be adding a Dual Screen Interpreter Mode, which will show your own words on one screen and your translated words on the other screen.
Android 14 Beta 4 just dropped, so here’s my thread covering what’s new 🧵
Sidenote: I’m only covering changes that were added since Android 14 Beta 3, so there won’t be a lot! If you want to see what the previous Developer Previews/Betas introduced, check out my earlier threads: twitter.com/MishaalRahman/…
Houston, we have a liftoff 🚀! The new Easter egg is here in Android 14 Beta 4, and it’ll delight any space sim enthusiasts out there. I don’t know what the heck I’m doing, but here’s a first look at the new Easter egg! I bet @dsandler had a LOT of fun with this one.