outreach, and UI development. Privacy Ensure users have transparency, controls and safeguards around data on their device. Updatability Modularize key components to enable updates outside of OS releases.
outreach, and UI development. Privacy Ensure users have transparency, controls and safeguards around data on their device. Updatability Modularize key components to enable updates outside of OS releases.
location sharing reminders. Storage Compartmentalizing storage to collections; limiting broad access to common storage. Device IDs Immutable device identifiers will be restricted to privileged apps. Background app launching Limiting the ability for apps to auto-launch to the foreground. Major privacy changes
location sharing reminders. Storage Compartmentalizing storage to collections; limiting broad access to common storage. Device IDs Immutable device identifiers will be restricted to privileged apps. Background app launching Limiting the ability for apps to auto-launch to the foreground. Major privacy changes
the device and usage data via timestamps User’s Location history - via geolocation tag in pictures App download files with PII - via access to all files
app storage Photo/Video Audio Downloads • Photo/Video and Audio collections • No permissions needed to access own(self-contributed) files • To access files created by others: Use “READ_EXTERNAL_STORAGE” permission • Access via MediaStore API Isolated sandbox storage
app storage Photo/Video Audio Downloads • Download collection • No permissions needed to contribute and view own files in common collections • Without relevant permission apps will only see self-contributed content • Files in common collections will survive app uninstallation Isolated sandbox storage
to Q Installed on Q Target SDK level P Granted old storage permission allows app to read all external storage directories. App operates similar as on P Target SDK level Q App can see MediaStore and collections content using new storage model.
location sharing reminders. Storage Compartmentalizing storage to collections; limiting broad access to common storage. Device IDs Immutable device identifiers will be restricted to privileged apps. Background app launching Limiting the ability for apps to auto-launch to the foreground. Major privacy changes
sharing reminders. Storage Compartmentalizing storage to collections; limiting broad access to common storage. Device IDs Immutable device identifiers will be restricted to privileged apps. Background app launching Limiting the ability for apps to auto-launch to the foreground. Major privacy changes
sharing reminders. Storage Compartmentalizing storage to collections; limiting broad access to common storage. Device IDs Immutable device identifiers will be restricted to privileged apps. Background app launching Limiting the ability for apps to auto-launch to the foreground. Major privacy changes
of my life last night. The driver kept having ads pop up over his navigation. We had a couple of lovely swerves and missed our exit because this was covering navigation.”
visible, or as a result of user interaction. An app that is not in use cannot decide to launch itself to the foreground. Applies to all apps – independent of target API
(e.g. top activity) 2 The app has an activity in the foreground task stack 3 A visible app binds to a service of the app 4 A visible app sends a pending intent of the app Exemptions Activity starts allowed when:
cannot retain permissions if app loses default status. ActivityRecognition: now under runtime permission. USB Serial: only after USB permission! More privacy
Camera Characteristics: null without camera permission. App Icon Hiding: apps in data partition can no longer hide icon. MAC Randomization random addresses when probing for new networks. More privacy
from top edge to bottom edge (edge-to-edge) Proprietary + Confidential Platform wants to reduce fragmentation & be more modern Introducing fully gestural navigation as a default-able mode in the platform All nav bar buttons replaced by gestures
system buttons/handles. • For older devices, recommend setting a translucent nav bar color. • Recoloring can be in the form of dynamic color adaptation or a static coloring. Dynamic color adaptation System will help with edge-to-edge
gestures via new View API: setSystemGestureExclusionRects(List<Rect>) • System required to respect these overrides for everything up to 200 dp on each side except the Home gesture. • Drawer and seek bars will support this out-of-box closer to the Q release. Overriding system gestures
• Dark Theme ◦ Save phone’s battery and make it look cool • Live Caption ◦ Accessibility in all media streams • Wi-Fi network suggestion API ◦ Propose to connect to a WiFi network without typing credentials • Project Mainline ◦ Security updates through Google Play More news!
first in Kotlin 2 If you’re starting a new project, you should write it in Kotlin 3 Code written in Kotlin often mean much less code for you → Less code to type, test, and maintain Kotlin
Android 6+ • Camera X ◦ Ease of use and device compatibility • Benchmark, it has been used for the Jetpack libraries ◦ Warm-up periods, removing outliers, and locking CPU clocks Android Jetpack
one file to master to rule them all • Provide reusable building blocks ◦ Let you build custom widgets easier without starting from scratch • Compatible with existing views ◦ You can mix and match and adopt at your own pace • Material Design out of the box and animations from the start Jetpack Compose