【问题标题】:Phonegap Geolocation doesn't show coordinatesPhonegap Geolocation 不显示坐标
【发布时间】:2014-09-04 12:19:32
【问题描述】:

我正在使用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>
 `

【问题讨论】:

    标签: android eclipse cordova geolocation


    【解决方案1】:

    首先,您的所有科尔多瓦版本都已弃用。 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 Geolocation Plugin

    【讨论】:

    • 我没有安装插件,我需要cordova 2.7版吗?他认为它来自 3.0 版。
    • ...由于您的英语,我不明白您的意思。
    • 对不起我的英语:)。当我转到 phonegap zip 版本最高为 2.9 的页面时,在 eclipse 中安装了 2.7 版,我下载 phonegap eclipse 3 for zip?
    • 从这里的主页下载 Cordova -> cordova.apache.org/#download 之后,按照本指南正确设置 Cordova -> cordova.apache.org/docs/en/3.5.0/… 然后你就从我上面的介绍开始。
    • 你的模拟器有gps吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多