Professional Documents
Culture Documents
Cheat Sheet Dark
Cheat Sheet Dark
https://d.android.com/design-for-safety
https://d.android.com/training/data-storage
app’s experience Use Photo Picker to provide a seamless and permissonless user experience to select visual media
Declare permission ) == PackageManager. PERMISSION_GRANTED
Plan your storage and file locations carefully
files and simplify developer costs
Increase situational context & wait for user actio Clearly highlight the feature / part of your
Check for permissio v al re qu estPermission =
app with limited functionality due to the App-specific storage
}
Let users continue to use other features in }
Preferences
Manifest.permission. REQUESTED_PERMISSION
Fill out the form in Play Console (Policy > App Set up callback to log different forms of data access
}
content) based on your app and 3rd party SDK override fun on AsyncNoted(asyncNotedAppOp: AsyncNotedAppOp){
bluetooth data usage.
}
appOpsManager.setOnOpNotedCallback(
Info from your app’s Data safety form will be mainExecutor,
Manage phone override fun onSelfNoted(syncNotedAppOp: SyncNotedAppOp) {
Show nearby places Create & access files Identify device Pair over Bluetooth appOpsCallback
calls & text highlighted in your app’s Play Store page and for // log self data access - fairly rare occurrence}
)
certain critical in-app permission requests. }
More at https://d.android.com/reference/androidx/activity/result/contract/ActivityResultContracts
re v okeSelfPermissionOn K ill (
Manifest.permission. CA LL _P H ONE
Reduce location computation by choosing the best location estimate
Requires ACCESS_BACKGROUND_LOCATION permission
)
<manifest package="com.example.game">
Use FusedLocationProvider to ensure compat across form factors (e.g. tablets) Location frequency might be affected by background location limits
<queries>
<manifest>
<intent>
</intent>
Android 14
an d roi d .permission. CAMER A
</queries>
...
Scoped storage enhancements
Approximate location
N otification permission
Selected media access