cordova插件- Geolocation

时间:2022-05-06
本文章向大家介绍cordova插件- Geolocation,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
  • 添加插件

$ cordova plugin add cordova-plugin-geolocation

  • 插件的使用
  • Methods
  • navigator.geolocation.getCurrentPosition
  • navigator.geolocation.watchPosition
  • navigator.geolocation.clearWatch

2. Example

function locationClik() {

    navigator.geolocation.getCurrentPosition(onSuccess, onError);

}


// 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');
}

///////////////////////////////////////////////////////////////////////////////////


// onSuccess Callback
//   This method accepts a `Position` object, which contains
//   the current GPS coordinates
//
function onSuccess(position) {
    var element = document.getElementById('geolocation');
    element.innerHTML = 'Latitude: '  + position.coords.latitude      + '<br />' +
            'Longitude: ' + position.coords.longitude     + '<br />' +
            '<hr />'      + element.innerHTML;
}

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

// Options: throw an error if no update is received every 30 seconds.
//

var watchID;
function locationTimeClik() {

    watchID  = navigator.geolocation.watchPosition(onSuccess, onError, { timeout: 30000 });

}

//////////////////////////////////////////////////////////////

function clearTimeClik() {

    navigator.geolocation.clearWatch(watchID);
}