Проблема с watchOS 10 CLLocationManager при получении разрешения на определение местоположения пользователяIOS

Программируем под IOS
Ответить
Гость
 Проблема с watchOS 10 CLLocationManager при получении разрешения на определение местоположения пользователя

Сообщение Гость »


У меня есть приложение для iOS и сопутствующее приложение для watchOS уже пару лет. Раньше все работало нормально. Теперь с iOS 17 и watchOS 10, похоже, возникает проблема с запросом у пользователей разрешения на использование их местоположения. У меня есть let locationManager = CLLocationManager(), и далее я затем спрашиваю у пользователя разрешение на получение его местоположения, вызывая locationManager.requestWhenInUseAuthorization(). Проблема сейчас в том, что ничего не происходит. Не появляется диалоговое окно, спрашивающее пользователя, можно ли узнать его местоположение. Все остальные разрешения, которые я запрашиваю (например, HealthKit), представлены, но не для местоположения.

Конечно, у меня есть правильная запись в Info.plist для Конфиденциальность — Местоположение при использовании Описание использования. Опять же... все это работало нормально до watchOS 10.

Я немного покопался и нашел две интересные вещи.
[*]
Если я переделаю свое приложение в приложение ТОЛЬКО для часов, диалоговое окно появится снова. Но я, конечно, этого не хочу. Я хочу сохранить приложение-компаньон.
[*]
В консольном приложении я обнаружил следующее сообщение:

standard 10:10:50.684329+0200 locationd {"msg":"#AuthPrompt #Warning Задержка запроса авторизации, размещенного при недостаточном использовании", "ClientKeyPath":iat.: , "requestType":0, "inUseLevel":0} Итак, он жалуется, что мое приложение недостаточно используется?!?

Итак, итог: вызов locationManager.requestWhenInUseAuthorization НЕ открывает системный диалог с запросом у пользователя разрешения. Поэтому статус авторизации всегда будет оставаться notDetermined. Кто-нибудь еще сталкивался с этой проблемой? И есть ли решение этой проблемы?
Ответить

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

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

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

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

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