Я сталкивался с этим при реализации разрешения местоположения. Я случайно объявил разрешение COARSE_LOCATION в манифесте, но запрашивал разрешение FINE_LOCATION. Диалоговое окно все еще показывалось, но я не смог получить местоположение, используя FusedLocationProvoider
. Местоположение объекта было нулевым.
if (isVersionMarshmallowAndAbove()) {
val permissions = ArrayList<String>(0)
if (!checkAccessCourseLocationPermission(context)) {
permissions.add(Manifest.permission.ACCESS_COARSE_LOCATION)
}
if (!checkAccessLocationPermission(context)) {
permissions.add(Manifest.permission.ACCESS_FINE_LOCATION)
}
if (permissions.size > 0) {
var permission: Array<String> = permissions.toTypedArray<String>()
ActivityCompat.requestPermissions(context, permission, 1)
}
}