приложение phonegap разрешено только безопасное происхождение - PullRequest
0 голосов
/ 31 декабря 2018

Я разрабатываю приложение Android PhoneGap. Я хочу получить текущее местоположение пользователя, поэтому я использовал этот плагин

 <plugin name="cordova-plugin-geolocation"    source="npm" spec="1.0.1" />  

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

navigator.geolocation.getCurrentPosition(onSuccess, onError);

Он вызывает локацию onError и выдает эту ошибку

Only secure origins are allowed (see: https://goo.gl /Y0ZkNV).

Как я могу обеспечить безопасность телефонного промежутка?

1 Ответ

0 голосов
/ 03 января 2019

Сервисные работники только через https .Самый простой способ обойти это - перейти на http://localhost:3000 вместо IP-адреса компьютера.

Полный код

<script type="text/javascript">
        app.initialize();

        document.addEventListener("deviceready", onDeviceReady, false);
        function onDeviceReady() {
        console.log(device.cordova);
          var onSuccess = function(position) {

          console.log('Latitude: '          + position.coords.latitude          + '\n' +
          'Longitude: '         + position.coords.longitude         + '\n' +
          'Altitude: '          + position.coords.altitude          + '\n' +
          'Accuracy: '          + position.coords.accuracy          + '\n' +
          'Altitude Accuracy: ' + position.coords.altitudeAccuracy  + '\n' +
          'Heading: '           + position.coords.heading           + '\n' +
          'Speed: '             + position.coords.speed             + '\n' +
          'Timestamp: '         + new Date(position.timestamp)      + '\n');
          };
          function onError(error) {
             console.log('code: '    + error.code    + '\n' +
          'message: ' + error.message + '\n');
          }

          navigator.geolocation.getCurrentPosition(onSuccess, onError);
        }


    </script>

Результат:

enter image description here

...