Ионный с эмулятором Android: автоматически отправлять местоположение?

У меня проблема с моим эмулятором Android. Когда я закрываю и снова открываю приложение, местоположение не отправляется автоматически. Мне нужно перейти в Extended Controls → Location и нажать кнопку "Отправить" для функции Ion Geolocation getCurrentPosition для ее получения.

Когда я загружаю эмулятор Android и приложение открывается в первый раз, это необязательно. Любая идея, как отправить местоположение автоматически независимо от того, что?

Ответ 1

Как правило, для тестирования плагинов нам нужно проверить в реальном устройстве, но, как ваш оригинальный вопрос об использовании его в эмуляторах, чтобы это получилось,

  • Попробуйте очистить кеш кордовы (если вы используете Visual Studio, вы можете сделать это как Инструменты- > Параметры)

  • Попробуйте добавить функцию watchPosition с помощью enableHighAccuracy : true

navigator.geolocation.watchPosition(onSuccess, onError, { 
    timeout:40000,
    enableHighAccuracy: true 
});

Обновление:

После быстрого поиска в google найдите эту ссылку, в которой указано, что:

Начиная с Chrome 50, Chrome больше не поддерживает получение местоположение пользователя с использованием API-интерфейса геолокации HTML5 со страниц, которые были доставлены по незащищенным соединениям. Это означает, что страница, Вызов API геолокации должен обслуживаться из безопасного контекста, такого как HTTPS.

Возможное решение может быть следующим:

Добавив соответствующие разрешения на платформу Android, откройте свой проект, найдите AndroidManifest.xml и добавьте следующие строки:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />

Подробнее... эта статья и this thread