# 地理位置 geolocation
手机 手表
# 接口声明
{ "name": "system.geolocation" }
1
# 导入模块
import geolocation from '@system.geolocation' 或 const geolocation = require('@system.geolocation')
1
# 接口定义
# geolocation.getLocation(OBJECT)
获取地理位置
# 权限要求
精确设备定位
# 参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| timeout | Number | 否 | 设置超时时间,单位是 ms,默认值为 30000。在权限被系统拒绝或者定位设置不当的情况下,有可能永远不能返回结果,因而需要设置超时。超时后会使用 fail 回调 |
| coordType | String | 否 | 坐标系类型,可选值可通过 getSupportedCoordTypes 获取,默认为 wgs84 |
| success | Function | 是 | 成功回调 |
| fail | Function | 否 | 失败回调,原因可能是用户拒绝 |
| complete | Function | 否 | 执行结束后的回调 |
# success 返回值:
| 参数名 | 类型 | 说明 |
|---|---|---|
| longitude | Number | 经度 |
| latitude | Number | 纬度 |
| accuracy | Number | 精确度 |
| time | Number | 时间 |
# fail 返回错误代码
| 错误码 | 说明 |
|---|---|
| 201 | 用户拒绝,获取定位权限失败 |
| 204 | 超时返回 |
| 1000 | 系统位置开关关闭 |
# 示例:
geolocation.getLocation({
success: function(data) {
console.log(`handling success: longitude = ${data.longitude}, latitude = ${data.latitude}`)
},
fail: function(data, code) {
console.log(`handling fail, code = ${code}, errorMsg=${data}`)
}
})
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 后台运行限制
禁止使用。
←
→
