详细问题描述
[内容]
安卓8.0系统不给定位权限时,在页面onShow中调用uni.getLocation会重复循环执行appshow和hide还有pageShow事件,测试时ios12正常
[步骤]
不给HbuildX基座定位权限,在页面onShow事件内调用uni.getLocation
[结果]
安卓8.0系统,会无限重复触发appShow,appHide,pageShow事件。
用ios12测试正常,事件都只触发一次。
[期望]
安卓端能够解决此问题
IDE运行环境说明
[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]
HBuilderX
uni-app运行环境说明
[运行端版本号]
编译器版本2.0.1 ,自定义模式
App运行环境说明
[Android版本号]
安卓8.0.0,MIUI10.3稳定版
[手机型号]
小米6
[模拟器型号]
附件
[代码片段]
onShow(){
this.getLocationMsg()
},
methods:{
// 获取定位信息
getLocationMsg(){
console.log(111)
// #ifdef APP-PLUS
uni.getLocation({
type: 'gcj02',
geocode:true,
success: res => {
console.log(222)
},
fail: err => {
console.log(333)
return false
},
});
// #endif
}
}
联系方式
[QQ]
350905422
3***@qq.com (作者)
出现此问题是在设置里禁止使用定位权限,如果勾选不再询问应该也是一样的,我猜测这个问题是因为不断弹窗不断拒绝,导致不停触发了show和hide事件,安卓8.0和9.0有此问题,6.0没发现此问题,ios12没发现此问题。现在将判断权限的功能放在了onLaunch事件里处理,暂时回避了这个问题。
2019-07-08 10:38