Событие PhoneGap deviceready не запускается - PullRequest
4 голосов
/ 27 марта 2012

Я разрабатываю веб-приложение, используя PhoneGap 1.5.0 , но не могу запустить событие deviceready.

Используемый cordova-1.5.0.js был расположен по адресу PhoneGap 1.5.0\lib\android\, и я безуспешно тестирую на нескольких устройствах Android.

<!DOCTYPE html>
<html>
  <head>
    <title>Device Properties Example</title>    
    <script type="text/javascript" charset="utf-8" src="cordova-1.5.0.js"></script>
    <script type="text/javascript" charset="utf-8">    

    document.addEventListener("deviceready", onDeviceReady, false);

    function onDeviceReady() {
        alert("onDeviceReady");
    }

    </script>
  </head>
  <body>
    <p id="deviceProperties">Loading device properties...</p>
  </body>
</html>

Ответы [ 2 ]

2 голосов
/ 27 марта 2012

Прежде всего, вам нужно протестировать его как приложение, а не в веб-браузере. Во-вторых, если вы хотите использовать геолокацию, вы можете использовать это так

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">

// Wait for PhoneGap to load
//
document.addEventListener("deviceready", onDeviceReady, false);

// PhoneGap is ready
//
function onDeviceReady() {
    navigator.geolocation.getCurrentPosition(onSuccess, onError);
}

// onSuccess Geolocation
//
function onSuccess(position) {
    var element = document.getElementById('geolocation');
    element.innerHTML = 'Latitude: '           + position.coords.latitude              + '<br />' +
                        'Longitude: '          + position.coords.longitude             + '<br />' +
                        'Altitude: '           + position.coords.altitude              + '<br />' +
                        'Accuracy: '           + position.coords.accuracy              + '<br />' +
                        'Altitude Accuracy: '  + position.coords.altitudeAccuracy      + '<br />' +
                        'Heading: '            + position.coords.heading               + '<br />' +
                        'Speed: '              + position.coords.speed                 + '<br />' +
                        'Timestamp: '          + new Date(position.timestamp)          + '<br />';
}

// onError Callback receives a PositionError object
//
function onError(error) {
    alert('code: '    + error.code    + '\n' +
          'message: ' + error.message + '\n');
}

</script>
0 голосов
/ 23 апреля 2012

я никогда не мог заставить Cordova-1.5.0 запустить устройство, как и ожидалось, на Android (API 8) .. нет проблем после перехода на 1.6.1, однако.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...