Расположение «Всегда разрешено» больше не работает с устройством iOS12 - PullRequest
0 голосов
/ 12 марта 2019

У меня есть приложение для упражнений, которое я создаю для клиента. У меня все работало правильно. Я недавно обновил свой телефон до iOS 12, и поведение служб определения местоположения в приложении перестало работать, как ожидалось.

Я получаю разрешение с помощью .requestAlwaysAuthorization(), и службы определения местоположения для приложения правильно установлены на «Всегда» в меню «Настройки»> «Конфиденциальность»> «Службы определения местоположения».

Когда пользователь начинает упражнение, черная стрелка местоположения появляется, как и ожидалось. Однако, когда пользователь блокирует телефон, стрелка меняется только на черный контур, и примерно через 10 секунд она исчезает.

Поэтому я запрашиваю разрешение у .requestAlwaysAuthorization().

У меня есть набор Privacy - Location Always and When in Use Usage Description в моем info.plist.

Я установил locationManager.delegate и распечатал в отладчике, чтобы я знал, что CLLocationManager .didUpdateLocations срабатывает, пока телефон разблокирован. Однако эти вызовы прекращаются, когда телефон заблокирован.

Я запускаю тесты на реальном iPhone 7+, а не на симуляторе. Я пробовал подключить его к XCode и в «реальной жизненной ситуации», и это не работает ни в одной ситуации.

Кто-нибудь имел эту проблему, или кто-нибудь знает что-нибудь, что изменилось между iOS11 и iOS12.

...