更新记录
1.0.1(2025-08-20)
升级定位SDK版本到1.2.1版本。
1.0.0(2025-06-07)
新版发布。
平台兼容性
uni-app(4.22)
Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
√ |
√ |
× |
× |
√ |
√ |
- |
- |
√ |
微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
快应用-华为 |
快应用-联盟 |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
uni-app x(4.22)
Chrome |
Safari |
Android |
iOS |
鸿蒙 |
微信小程序 |
- |
- |
- |
- |
- |
- |
高德定位UTS插件接口文档
1. 高德定位UTS插件
<script>
//高德定位UTS插件
import * as AMapLoc from "@/uni_modules/Lizii-AMapLocHar";
export default {
}
</script>
2. 设置高德key(必须)
<script>
//高德定位UTS插件
import * as AMapLoc from "@/uni_modules/Lizii-AMapLocHar";
export default {
onLoad() {
//设置高德key
let apiKey = "xxx";
AMapLoc.setApiKey(apiKey);
}
}
</script>
3. 隐私合规检查接口(必须)
<script>
//高德定位UTS插件
import * as AMapLoc from "@/uni_modules/Lizii-AMapLocHar";
export default {
onLoad() {
//设置高德key
let apiKey = "xxx";
AMapLoc.setApiKey(apiKey);
//隐私合格检查接口
let isContains = true;
let isShow = true;
AMapLoc.updatePrivacyShow(isContains, isShow);
let isAgree = true;
AMapLoc.updatePrivacyAgree(isAgree);
}
}
</script>
4. 检查定位服务是否打开
//检查定位服务是否打开
var enable = AMapLoc.locationServicesEnabled();//true:定位服务打开 false:定位服务关闭
5. 进入打开定位服务界面
//进入打开定位服务界面
AMapLoc.openLocationSetting();
6. 检查定位权限
//检查定位权限是否授权,并申请定位权限
AMapLoc.checkLocationPermission(function(res){
console.log(res);
if (res.result == true) {
} else {
//打开app设置界面 设置始终定位权限
AMapLoc.openAppSetting();
}
});
7. 检查始终允许后台定位权限
//检查始终允许后台定位权限
AMapLoc.checkAlwaysLocationPermission(function(res){
console.log(res);
if (res.result == true) {
} else {
//打开app设置界面 设置始终允许后台定位
AMapLoc.openAppSetting();
}
});
8. 打开app设置界面
//打开app设置界面
AMapLoc.openAppSetting();
9. 单次定位
//单次定位
AMapLoc.getLocation({
options:{
needAddress:true//是否需要解析地址
},
onLocationChanged: (location) => {
console.log(location);
let latitude = location.latitude;//纬度
let longitude = location.longitude;//经度
let altitude = location.altitude;//海拔
let speed = location.speed;//速度
let bearing = location.bearing;//方向
let time = location.time;//方向
//逆地址信息,当needAddress:true返回以下信息
let address = location.address;//地址
let country = location.country;//国家
let province = location.province;//省/直辖市
let city = location.city;//城市
let cityCode = location.cityCode;//城市编码
let district = location.district;//区
let adCode = location.adCode;//区编码
let street = location.street;//街道名称
let streetNum = location.streetNum;//门牌号
let aoiName = location.aoiName;//所属兴趣点名称
let poiName = location.poiName;//兴趣点名称
},
onLocationError: (errorCode, errorMsg) => {
console.log(errorCode);//错误码
console.log(errorMsg);//错误消息
}
});
10. 开启持续定位
//开启持续定位
AMapLoc.startUpdatingLocation({
options:{
needAddress:false,//是否需要解析地址
allowsBackgroundLocationUpdates:true,//是否开启后台定位
interval:2000,//定位时间间隔,单位毫秒
distanceFilter:0//位置报告距离间隔 单位是米
},
onLocationChanged: (location) => {
console.log(location);
let latitude = location.latitude;//纬度
let longitude = location.longitude;//经度
let altitude = location.altitude;//海拔
let speed = location.speed;//速度
let bearing = location.bearing;//方向
let time = location.time;//方向
//逆地址信息,当needAddress:true返回以下信息
let address = location.address;//地址
let country = location.country;//国家
let province = location.province;//省/直辖市
let city = location.city;//城市
let cityCode = location.cityCode;//城市编码
let district = location.district;//区
let adCode = location.adCode;//区编码
let street = location.street;//街道名称
let streetNum = location.streetNum;//门牌号
let aoiName = location.aoiName;//所属兴趣点名称
let poiName = location.poiName;//兴趣点名称
},
onLocationError: (errorCode, errorMsg) => {
console.log(errorCode);//错误码
console.log(errorMsg);//错误消息
}
});
11. 停止持续定位
//停止持续定位
AMapLoc.stopUpdatingLocation();
12. 开启后台定位任务
//开启后台定位任务
//如需在后台定位(后台定位需后台定位、后台运行权限),则要在应用切入后台前调用开启后台定位任务,
AMapLoc.startContinuousTask();
13. 停止后台定位任务
//停止后台定位任务
//回到前台可以停止后台任务
AMapLoc.stopContinuousTask();
14、 设置后台定位任务配置
在harmony-configs/entry/src/main/module.json5文件中增加设置
{
"module": {
"abilities": [
{
...
"backgroundModes": [
"location"
]
}
}
}
}