Runtime permissions
Location Permission
fun checkLocationPermission(requestCode: Int) {
val permissionFineLocationApproved = ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED
if (permissionFineLocationApproved) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
val backgroundLocationPermissionApproved = ActivityCompat.checkSelfPermission(
this, Manifest.permission.ACCESS_BACKGROUND_LOCATION
) == PackageManager.PERMISSION_GRANTED
if (!backgroundLocationPermissionApproved) {
ActivityCompat.requestPermissions(this,
arrayOf(Manifest.permission.ACCESS_BACKGROUND_LOCATION),
requestCode)
}
}
} else {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
ActivityCompat.requestPermissions(this,
arrayOf(
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_BACKGROUND_LOCATION),
requestCode)
} else {
ActivityCompat.requestPermissions(this,
arrayOf(Manifest.permission.ACCESS_FINE_LOCATION),
requestCode)
}
}
}Activity Recognition Permission
Battery optimization
Nearby Devices Permission
Notification Runtime Permission
Full-screen intent permission
Google Play Services
Last updated
Was this helpful?

