Невозможно получить navigator.geolocation.getCurentPosition / watchPosition для запуска в iOS.Safari или Xcode.
Xcode 10.2, цель развертывания 12.0, cordova-plugin-geolocation
Это приложение отображает маркеры на карте Google и отслеживает ваше местоположение.Работал нормально до позднего марта.Возможно обновление iOS произвело это, я не уверен.Ресурс, запрашивающий navigator.geolocation.getcurrentposition / watchposition, является локальным для устройства.Приложение подключается к базе данных, расположенной на защищенном сервере, для обслуживания данных, связанных с маркерами.Правильно ли я прочитал, что функции getcurrentposition / watchposition теперь будут работать только при запуске с безопасного сервера?Это может быть моей проблемой, если так.NSLocationWhenInUseUsageDescription и NSLocationAlwaysAndWhenInUseUsageDescription добавлены в info.plist.
info.plist
<key>NSLocationWhenInUseUsageDescription</key>
<string>HistOrigin uses your location to show historic sites</string>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>HistOrigin uses your location to show historic sites</string>
main.html - я запускаю скрипт с этой конструкцией.
(function() {
document.addEventListener("deviceready", function() {
...blahblahblah loadmap and function definitions...
Historigin.initialize();
}, false);
app.initialize();
})();
* 1012main.js
var Historigin = {
initialize: function() {
...blahblahblah Load settings, JSON html and function definitions....
navigator.geolocation.getCurrentPosition(function(position) {
Я проверяю наличие навигатора.Это присутствует.Когда вызываются getcurrentposition или watch position, они не срабатывают.Функция обратного вызова ошибки также не вызывается.Я ожидаю, что карта будет отображаться и маркеры будут отображаться.