Phonegap Geolocation不显示坐标

时间:2014-09-04 12:19:33

标签: android eclipse cordova geolocation

我正在使用cordova-2-7.0。 我复制并粘贴了代码页phonegap,但我没有在模拟器上看到坐标。有什么问题?我的手机上都没有显示。

 <!DOCTYPE HTML>
 <html>
  <head>
   <title>AjpdSoft localización</title>

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

// Esperar la carga de Cordova
document.addEventListener("deviceready", onDeviceReady, false);

// Cordova cargado
function onDeviceReady() 
{
    navigator.geolocation.getCurrentPosition(onSuccess, onError);
}

// Localización encontrada
function onSuccess(position) 
{
    var element = document.getElementById('geolocation');
    element.innerHTML = 'Latitud: ' + position.coords.latitude + '<br />' +
                        'Longitud: ' + position.coords.longitude + '<br />' +
                        'Altitud: ' + position.coords.altitude + '<br />' +
                        'Precision: ' + position.coords.accuracy + '<br />' +
                        'Precision altitud: ' + position.coords.altitudeAccuracy           +           '<br/>' +
                        'Partida: ' + position.coords.heading + '<br />' +
                        'Velocidad: ' + position.coords.speed + '<br />' +
                        'Timestamp: ' + position.timestamp + '<br />';
}

// Si se produce un error en la obtención de la posición
function onError(error) 
{
    alert('Código error: ' + error.code + '\n' +
          'Error: ' + error.message + '\n');
}

</script>
</head>
 <body>
   <p id="geolocation">Obteniendo localizacion, espere por favor...</p>
  </body> </html>
 `

1 个答案:

答案 0 :(得分:1)

首先,您的所有cordova版本都已弃用。 3.5是实际的,2.7是非常老的。因此,请将您的cordova版本升级到最新的稳定版本。

之后你应该建立一个像这样的全新项目:

  • cd ~/desktop
  • cordova create test com.test.com test
  • cd test
  • cordova platform add android(或iOS或其他任何内容)
  • cordova plugin add org.apache.cordova.geolocation
  • cordova build

之后你打开你的项目,将索引修改为你想要的样子,然后将这段代码粘贴到其中:

// onSuccess Callback
// This method accepts a Position object, which contains the
// current GPS coordinates
//
var onSuccess = function(position) {
    alert('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: '         + position.timestamp                + '\n');
};

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

navigator.geolocation.getCurrentPosition(onSuccess, onError);

这是cordova地理定位插件的完整示例,可在此处找到Cordova Geolocation Plugin