What Is New in Android 10
Android 10 introduced a major shift towards user privacy, security, and a more immersive experience. The update brought system-wide dark mode, enhanced location controls, and new gestures for navigation.
| Category | Key Changes |
|---|---|
| Privacy & Security | Scoped Storage, Enhanced location permissions, Background activity restrictions |
| User Experience | System-wide Dark Theme, Gesture Navigation, Focus Mode |
| New APIs & Technologies | Live Caption, Smart Reply, Bubbles, Foldable support |
| Security Updates | Project Mainline updates via Google Play |
| Behavior Changes | Non-SDK interface restrictions, Background access limits |
How did Android 10 change app privacy?
Android 10 put user privacy front and center with stricter controls over what data apps can access. The most significant change was the introduction of Scoped Storage, which limits an app's access to the shared storage to its own directory and specific media types without permissions.
Location permissions were also revamped. Users can now grant an app access to their location only while the app is in use, a setting that developers must handle gracefully. This matters because it forces apps to be more transparent about data collection and to function with minimal permissions.
What new user features did Android 10 introduce?
The most visible user feature was the system-wide Dark Theme, which could be triggered by a quick settings tile and applied to the system UI and supporting apps. This was a long-requested feature that reduces eye strain and saves battery on OLED displays.
Gesture Navigation replaced the traditional three-button system with a single bar, allowing users to swipe to go home, switch apps, or go back. Features like Live Caption used on-device ML to automatically caption media, and Smart Reply provided context-aware responses in notifications.
How did Android 10 improve security for users?
Android 10 launched Project Mainline, a fundamental shift in how the OS is updated. It allows Google to push critical security and privacy fixes directly to users via Google Play, bypassing carrier and OEM delays for core OS components.
This modular approach meant that vulnerabilities in areas like the Media Framework, DNS resolver, and security could be patched quickly for all compatible devices. In practice, this drastically improved the security posture of the entire Android ecosystem.
What were the key developer-facing changes?
For developers, the biggest adjustments came from the new privacy restrictions. Adapting to Scoped Storage required significant changes for any app that accessed shared files. The new background location access permission also needed explicit handling to avoid breaking functionality.
Android 10 also tightened restrictions on non-SDK interfaces. Many hidden APIs that developers had been using through reflection were now blocked, pushing everyone to use the official, public SDK. This was a move to improve platform stability but broke some existing apps.
FAQ
What is Scoped Storage and why was it introduced?
Scoped Storage is a new storage model that limits app access to external storage. Instead of having broad access, an app has its own isolated storage sandbox and can only access specific types of public media (photos, music, videos) without requesting permissions. It was introduced to protect user privacy and reduce file clutter.
How do I handle the new background location permission?
You must request the ACCESS_BACKGROUND_LOCATION permission separately from the foreground permission. Before requesting it, check if your app's functionality truly requires constant location access. The system will present a special dialog to the user, and they are more likely to deny permission if the use case isn't clear.
What are the alternatives to using restricted non-SDK interfaces?
Google provides a list of public SDK alternatives for many commonly used non-SDK interfaces. You should audit your code for usage of reflection and @hide APIs and replace them with the official public APIs. If no alternative exists, you can file a feature request.
My app uses a lot of background activity, what changed?
Android 10 further restricted background activity to improve battery life. Apps cannot start activities from the background. You should use high-priority notifications or system alerts to grab user attention instead of launching an activity directly.
How do I support the new gesture navigation in my app?
To ensure your app works well with gestures, you should use edge-to-edge rendering. This involves setting transparent system bars and handling any insets properly so that your content isn't obscured by the gesture bar. The WindowInsets API is key for this.