在安卓机型的特殊场景下,getLocation进入死循环
发布于 5 年前 作者 wei60 13160 次浏览 来自 问答

机型:

任何安卓机。(目前测试了小米和华为)

场景复现步骤:

注意:复现以前,先把你配的appId的小程序先删了,避免已经授权过地理位置信息

1、从系统设置里打开微信地理位置授权

2、进入小程序,同意授权,打开debug。方便看log

3、从系统里关闭微信地理位置授权

4、再次进入小程序 -> 会弹出系统授权 -> 选中禁止后不再询问 -> 禁止

5、看log,进入死循环

分析原因:

拉出系统授权以后,小程序进入后台。点击禁止后小程序返回前台。触发生命周期函数onShow。再次进入系统授权逻辑。

然后因为不再询问,因此不停前后台切换进入了死循环

建议解决方案:

1、将小程序里的授权关闭,不让下次进入系统授权而进行前后台切换、

2、或者静默关闭时,不再拉起系统授权直接返回错误

1 回复

你好,关闭微信的定位授权后,在小程序里使用getLocaton,会弹系统的定位授权提示,是这个导致的。

后续我们兼容下这种情况,感谢反馈

回到顶部