Flutter не отображает запрос разрешения на определение местоположения в рабочей среде (Android)Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Flutter не отображает запрос разрешения на определение местоположения в рабочей среде (Android)

Сообщение Anonymous »

Недавно я опубликовал приложение Flutter в Google Play. Во время разработки он работал отлично, но версия, опубликованная в Google Play, никогда не запрашивает разрешения на определение местоположения. Она автоматически помечает разрешение на определение местоположения как навсегда отклоненное.
Эта функция должна инициировать запрос разрешения на определение местоположения:

Код: Выделить всё

  _getUserLocation() {
if(context.read().state == null) {
Permission.locationWhenInUse.request().then((PermissionStatus permissionStatus) {
// If permission granted (permanently or not)...
if(permissionStatus != PermissionStatus.permanentlyDenied && permissionStatus != PermissionStatus.denied) {
setState(() {
locationDenied = false;
});
Geolocator.getCurrentPosition(
locationSettings: const LocationSettings(
accuracy: LocationAccuracy.high,
),
).then((Position position) {
LatLng newPosition = LatLng(position.latitude, position.longitude);
context.read().set(
location: newPosition,
);
setState(() {
userLocation = newPosition;
});
});
} else { // If permission denied (permanently or not)...
setState(() {
locationDenied = true;
});
}
});
} else {
/* More stuff */
}
}

Код: Выделить всё

locationDenied
является логическим значением, допускающим значение NULL? но сразу после установки моего приложения из Google Play эта функция вызывается, и я вижу экран, как и ожидалось, когда locationDenied имеет значение true, и это может может быть установлено как true только с помощью этой функции. Вывод: мое приложение по умолчанию автоматически отказывает в разрешении на определение местоположения, даже не спрашивая.
Когда я захожу в настройки приложения (сразу после этого), я вижу следующее:

Разрешение на определение местоположения не разрешено.
Мой файл pupspec.yaml имеет следующий вид:

Код: Выделить всё

name: he_name_of_my_app
description: "The_name_of_my_app"
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
version: 1.0.9+9

environment:
sdk: '>=3.4.0-268.0.dev 

Подробнее здесь: [url]https://stackoverflow.com/questions/79033113/flutter-not-displaying-location-permission-request-on-production-android[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»