uni-app 获取地理位置,并打开第三方地图,如果已拒绝地理授权,重新询问用户,是否开启权限
uni.getLocation({
type: 'gcj02', //返回可以用于uni.openLocation的经纬度
// 用户允许获取定位
success: (res) => {
const {
latitude,
longitude
} = res;
uni.openLocation({
latitude,
longitude,
name: '加油站',
address: '加油站详细地址',
success: (e) => {
console.log('success', e);
}
});
},
// 用户拒绝获取定位后 再次点击触发
fail: (res) => {
if (res.errMsg == "getLocation:fail auth deny") {
uni.showModal({
content: '检测到您没打开获取信息功能权限,是否去设置打开?',
confirmText: "确认",
cancelText: '取消',
success: (res) => {
if (res.confirm) {
uni.openSetting({
success: (res) => {
console.log('确定');
}
})
} else {
console.log('取消');
return false;
}
}
})
}
}
});