地理位置

本文介绍地理位置类WVLocation相关的JSAPI,供您在通过跨平台DevOps创建H5端应用或者小程序时参考。地理位置类WVLocation的JSAPI提供搜索、获取地理位置的相关能力。

WVLocation.getLocation

获取当前的地理位置。

说明
  • VER.iOS 8后苹果修改了应用的定位权限,应用必须在Info.plist中加入 NSLocationWhenInUseUsageDescriptionNSLocationAlwaysUsageDescription的关键字,才能正常的弹出请求定位权限的提示。

  • VER.iOS 11后必须在Info.plist中同时加入NSLocationAlwaysAndWhenInUseUsageDescriptionNSLocationWhenInUseUsageDescription的关键字,才能正常的弹出请求定位权限的提示。

输入参数

  • [string]enableHighAccuracy:可选,是否获取高精度的位置,取值:truefalse,默认为false

  • [boolean] address:可选,是否获取地址描述,如中国杭州市,取值:truefalse,如果不获取地址描述,则可以更快的返回经纬度。默认为false

回调参数

回调参数将会在回调方法中传递,如果成功获取,则进入success回调,否则进入failure回调。

  • [object]coords:经纬度信息:

    • [string]longitude:经度。

    • [string]latitude:纬度。

    • [string]accuracy:水平精度。

  • [object]address:地址信息:

    • [string]city:城市。

    • [string]province:省。

    • [string]area:区。

    • [string]road:道路。

    • [string]addressLine:详细地址。

    • [string]cityCode:城市代码。如果是Android平台的非手淘客户端,无法获取此字段,原因是Google返回的数据中没有该字段。

重要

由于定位的精度和使用的接口的缘故,地址信息可能并不完整(例如缺少某些项),或精度较低,因此 H5端请务必做好数据的异常处理。

var params = {
        // 是否获取高精度的位置
        enableHighAccuracy: true,
        // 是否获取地址描述
        address: true
};
window.WindVane.call('WVLocation', 'getLocation', params, function(e) {
        alert('success:' + JSON.stringify(e));
}, function(e) {
        alert('failure:' + JSON.stringify(e));
});

WVLocation.searchLocation

说明

该API仅适用于WindVane iOS。

搜索给定地址的地理位置经纬度。

输入参数

  • [string]addrs:要搜索的地址。

回调参数

回调参数将会在回调方法中传递,如果成功获取,则进入success回调,否则进入failure回调。

  • [string]longitude:经度。

  • [string]latitude:纬度。

var params = {
        // 要搜索的地址
        addrs: ' xxxx西路960号'};
window.WindVane.call('WVLocation', 'searchLocation', params, function(e) {
        alert('success:' + JSON.stringify(e));
}, function(e) {
        alert('failure:' + JSON.stringify(e));
});