getLoaction() {
this.marker = []; //定位图标
this.circles = [];
let _this = this;
if (this.limitsOfAuthorityFlag == 0) {
plus.android.requestPermissions(
[
"android.permission.ACCESS_FINE_LOCATION",
"android.permission.ACCESS_COARSE_LOCATION",
],
(resultObj) => {
let result = 0;
for (var i = 0; i < resultObj.granted.length; i++) {
result = 1;
}
for (var i = 0; i < resultObj.deniedPresent.length; i++) {
result = 0;
}
for (var i = 0; i < resultObj.deniedAlways.length; i++) {
result = -1;
}
if (result == 1) {
this.limitsOfAuthorityFlag = 0;
uni.getLocation({
type: "gcj02",
geocode: true,
success: function (loaction) {
_this.latitude = loaction.latitude;
_this.longitude = loaction.longitude;
let { city, district, street, streetNum } = loaction.address;
setTimeout(() => {
_this.currentAddress = city + district + street + streetNum;
//图标
_this.marker[0] = {
id: 1,
iconPath: "/static/images/positioningIcon.png",
latitude: loaction.latitude,
longitude: loaction.longitude,
width: 5,
height: 5,
anchor: { x: 0.5, y: 1 },
label: {
content: _this.currentAddress,
color: "#ffffff",
fontSize: 15,
},
};
}, 50);
_this.$forceUpdate();
},
fail: function (error) {
uni.showToast({
title: "定位失败!",
icon: "error",
});
},
});
} else {
this.limitsOfAuthorityFlag = 1;
uni.showModal({
title: "无法访问位置",
content:
"请打开位置定位功能(点击确定后在权限管理中授权位置权限)",
showCancel: true, // 不显示取消按钮
success(res) {
if (res.confirm) {
_this.limitsOfAuthorityFlag = 0;
uni.openAppAuthorizeSetting({
success(res) {},
});
}
},
});
}
},
(error) => {}
);
}
},
- 发布:2024-08-26 09:50
- 更新:2024-08-29 04:45
- 阅读:261
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 11 家庭中文版
HBuilderX类型: 正式
HBuilderX版本号: 4.24
手机系统: Android
手机系统版本号: Android 12
手机厂商: 华为
手机机型: HUAWEI Mate 60
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
打开定位页面,显示当前位置,然后移动一段距离,再打开定位页面,当前位置显示还是之前的定位,目前mate60出现这种情况,其他手机(小米)均正常
打开定位页面,显示当前位置,然后移动一段距离,再打开定位页面,当前位置显示还是之前的定位,目前mate60出现这种情况,其他手机(小米)均正常
预期结果:
打开定位功能能正常显示当前位置
打开定位功能能正常显示当前位置
实际结果:
未正确显示当前位置
未正确显示当前位置
bug描述:
能正常调用高德api,经客户反馈地图定位不准确
经客户使用其他第三方导航定位显示当前位置如下图1:
客户使用我方app打开定位,位置不准确如图2:
使用第三方导航显示当前位置与我方APP显示当前位置差异性如图3: