Android 15: What app developers and product leaders need to know
ArcTouch explains the key new features and updates in Android 15 that app developers and product leaders need to know.
6 min. read - July 11, 2024
![two smartphones displaying Android 15 home screens](/_next/image?url=https%3A%2F%2Fimages.ctfassets.net%2Fefnbmai9c55m%2F2WhZkWAe3vF3o5vgL7o3gh%2F01a798dd28737c917f16a0f37eaa84ce%2Fandroid-15-hero_copy.webp&w=3840&q=75)
![two smartphones displaying Android 15 home screens](/_next/image?url=https%3A%2F%2Fimages.ctfassets.net%2Fefnbmai9c55m%2F2WhZkWAe3vF3o5vgL7o3gh%2F01a798dd28737c917f16a0f37eaa84ce%2Fandroid-15-hero_copy.webp&w=3840&q=75)
![two smartphones displaying Android 15 home screens](/_next/image?url=https%3A%2F%2Fimages.ctfassets.net%2Fefnbmai9c55m%2F2WhZkWAe3vF3o5vgL7o3gh%2F01a798dd28737c917f16a0f37eaa84ce%2Fandroid-15-hero_copy.webp&w=3840&q=75)
Much of the buzz from the recent Google I/O conference was centered on advancements in AI through Gemini. Yet, the significant updates announced for Android 15 equally captured our attention.
In this post, we explore the key enhancements to Android 15 that app developers and product leaders need to be aware of in three areas: user experience, privacy & security, and battery & performance.
User experience
Improved Multitasking
Android 15 introduces improved multitasking capabilities with "Save app pair" shortcuts. This feature allows users to open apps already in split-screen mode, facilitating a smoother user experience for those who frequently use two apps simultaneously. To aid developers in adapting their apps to different screen sizes and modes, Google has released a new Jetpack compose library called Material3 Adaptive.
![](https://images.ctfassets.net/efnbmai9c55m/4ljKMQ7mW2k51KoD6dsLnn/a0b4f2a8ee188c032359ed46f142fce3/android-15-multitasking.gif)
source: Google
Android Widget Previews
In another effort to enhance user experience, Android 15 offers Widget Previews. This feature enables Android apps to provide a personalized preview of a Widget. Implementing this involves creating your own RemoteView and providing the preview to the AppWidgetManager using the newly added APIs setWidgetPreview, getWidgetPreview, and removeWidgetPreview.
Of note, Google has introduced Jetpack Compose Glance to facilitate the design of those widgets.
![](https://images.ctfassets.net/efnbmai9c55m/2tq4Zb125yzNRSykW9f2rN/302e60b5e1e2fd10de024b52db487467/android-15-widget-preview.png)
source: Google
Predictive Back
Predictive Back, a feature introduced in Android 13 to enhance intuitive gesture navigation, will now be activated by default in Android 15. If your app has a customized back navigation logic and does not yet support Predictive Back, it's crucial to implement this feature to ensure a seamless user experience.
![](https://images.ctfassets.net/efnbmai9c55m/6uYkZjDMYq12wmHBwY5iMS/c1c6fdbe1d153856252ce00cd5ae4a7b/android-15-predictive-back.gif)
source: Google
Edge-to-Edge
Another default feature in Android 15 is edge-to-edge, which maximizes the available display area. When designing your screens, it's important to consider Window insets to set up your screen components correctly. Apps using Material 3 Compose components might not be negatively impacted because most components apply insets, while Material 2 Compose doesn’t automatically apply insets.
Below are some examples of how edge-to-edge works and possible problems your app may encounter:
![](https://images.ctfassets.net/efnbmai9c55m/5yheYQOt3KhvxHS92Zn8H2/5f37a80586b70f9d9f2c563ac6cfd5a1/android-14-edge-to-edge.png)
This Android 14 app does not apply edge-to-edge. (source: Google)
![](https://images.ctfassets.net/efnbmai9c55m/7qfpAtpLNzXN87nFKvyPdY/d7d16b2a384b2861f135b2cfa5acd845/android-15-edge-to-edge-incorrect..png)
This Android 15 app uses edge-to-edge but has drawing issues. Notice the status bar on top overlaps with screen text and the navigation features overlap with the screen’s UI. (source: Google)
![](https://images.ctfassets.net/efnbmai9c55m/7LnqD5V1IJyAUCNEh3VSIp/831cc189c2df770c53ebdd8a0b4e6410/android-15-edge-to-edge-correct.png)
This Android 15 use of edge-to-edge includes appropriate padding between system and app elements. (source: Google)
Developers can apply edge-to-edge in Activities when targeting apps below Android 15. All you need to do is add the following snippet to your code:
1
2
3
4
Audio Focus
Android 15 introduces new restrictions on Audio Focus requests. Currently, apps can sometimes continue to play their audio content even after being closed or left idle, which can lead to a less-than-ideal user experience. To address this, Google is implementing restrictions that allow only the top app on the user's screen or an audio-related foreground service (such as media playback, camera, microphone, or phone calls) to request Audio Focus. As app developers, ensuring your apps comply with these new restrictions is crucial to delivering a high-quality user experience.
Picture-in-Picture
Another significant update pertains to the Picture-in-Picture (PiP) mode. Android 15 introduces new methods to track the transition to PiP mode more effectively. Notably, the onPictureInPictureUiStateChanged()
activity callback will be invoked as soon as the transition to PiP happens. This allows for the hiding of overlaid UI elements, ensuring a smoother transition. It's important to consider these changes when developing or updating your apps to provide a seamless user experience.
Security & privacy
Private Space
Android 15 comes equipped with several security features, the most notable being Private Space. This dedicated space keeps sensitive applications hidden and locked even after the phone is unlocked, providing an additional layer of authentication configured by the user. For example, you can access your phone using a 4-digit PIN, but Private Space is configured to use fingerprint authentication.
This area can be used to store apps you don't want to be easily accessed, like banks, password managers, and others.
Private Space can be leveraged by any app, but developers need to consider:
Apps within the Private Space are kept in a separate user profile, similar to the existing Work Profile. All data stored will also be separate from regular apps, creating restrictions on sharing data between apps. However, Android Sharesheet and Photo Picker can share data across different spaces when Private Space is unlocked. For example, consider a scenario where you've made a money transfer from your bank app, stored in Private Space, and you want to share the receipt with someone through WhatsApp, stored in the main profile. By leveraging the Android Sharesheet and/or the photo picker, developers can easily access those files generated in Private Space.
To install apps that are only available in the Private Space, you need to implement an
IntentFilter
with the categoryCATEGORY_APP_MARKET
.
![](https://images.ctfassets.net/efnbmai9c55m/5yhOw2CyPzfmHZkr6Or5nV/0a72df234cb2e347e1ffff4dab41ed07/android-15-private-space.png)
source: ArcTouch
For those who develop or own a launcher app — an app that customizes the user interface of the Android device — additional steps need to be taken to make Private Space available to Android 15 users. This added layer of security ensures that sensitive applications remain hidden and inaccessible without proper authentication, thereby enhancing user privacy and data protection.
Photo-access permissions
Google has also improved photo-access permissions, offering partial access to recently accessed photos and videos without needing full file access permission. This builds trust with users concerning privacy. To support these features, developers need to enable querying the MediaStore
through the ContentResolver
.
Task Hijacking
Google has also made some changes to increase security by preventing other apps from opening Activities in the background without users' awareness, known as Task Hijacking. To prevent task hijacking, developers need to declare the following command in AndroidManifest.xml:
1
You can still allow a specific activity to be shared by opting out of this behavior and declaring your activity:
1
2
3
4
5
Strict mode
Another safety measure in Android 15 is setting Strict mode to detect the launch of unsafe intents. This helps prevent malicious apps from exploiting intents in activities. Safer Intents must have declared actions and match their intent filters correctly, so make sure all your app intents comply with the Strict mode.
All developers need to do to activate the Strict mode is to add this code:
1
2
3
4
5
6
Battery-life & Performance
Foreground services
Android 15 introduces limitations to Foreground services to optimize battery life and performance. Data Sync and Media Processing foreground service types now have a 6-hour time limit. If this limit is reached, the service will no longer be considered a Foreground service and will be stopped.
If the app has a SYSTEM_ALERT_WINDOW
permission to allow starting foreground services while the app is running in the background, Android 15 will require a visible overlay to inform the user of the running service.
If you have long-running services in applications, evaluate their efficiency to prevent reaching the newly imposed limits. If those foreground services start in the background, make sure they match the new requirements; otherwise, services will fail to start.
Developers can leverage Android Studio to debug network and power usage to keep the services battery-efficient. There was a great Google I/O talk about this topic.
Is your app ready for Android 15?
Android 15 offers apps an enhanced user experience, improved privacy and security, and optimized battery life and performance. These updates present both opportunities and challenges for app developers and product leaders. Understanding and implementing these changes effectively is key to creating lovable Android apps.
If you need help preparing for Android 15, our team of Android app developers can help. Contact us for a free consultation.
Article Author:
Subscribe for more insights
Get our newsletter in your inbox.
![Email icon.](/_next/image?url=https%3A%2F%2Fimages.ctfassets.net%2Fefnbmai9c55m%2FGJ5AJYfJzqa0RmsLMrBbD%2Fe42de66667b8d428c9dcafe530d9f0ba%2Ficon-email.png&w=3840&q=100)
Contact us.
Let's build something lovable. Together.
We help companies of all sizes build lovable apps, websites, and connected experiences.