我的 list 中有ACCESS_FINE_LOCATION
和ACCESS_COARSE_LOCATION
,但假设我需要实时获得授予的权限.在https://developer.android.com/training/location/permissions上有一个样本
val locationPermissionRequest = registerForActivityResult(
ActivityResultContracts.RequestMultiplePermissions()
) { permissions ->
when {
permissions.getOrDefault(Manifest.permission.ACCESS_FINE_LOCATION, false) -> {
// Precise location access granted.
}
permissions.getOrDefault(Manifest.permission.ACCESS_COARSE_LOCATION, false) -> {
// Only approximate location access granted.
} else -> {
// No location access granted.
}
}
}
但它有编译"未解析的引用:RegisterForActivityResult"
所以我认为我可以使用ActivityCompat.requestPermissions()
,就像在https://stackoverflow.com/a/40955157/131391中一样,但是这个方法的第一个参数是Activity
,而我只有一个小部件,没有活动.
我不确定下一步要try 什么,以获得我的小部件的位置许可.