调用univerifyManager.close关闭一键登录授权界面
调用uni.getLocation获取定位(弹出获取定位授权弹窗)
- 发布:2023-01-12 16:26
- 更新:2023-01-13 16:55
- 阅读:449
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 21H1
HBuilderX类型: Alpha
HBuilderX版本号: 3.6.17
手机系统: Android
手机系统版本号: Android 12
手机厂商: 华为
手机机型: nova5 pro
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
关闭一键登录授权界面
关闭一键登录授权界面
实际结果:
未关闭一键登录授权界面
未关闭一键登录授权界面
bug描述:
遇到获取定位授权弹窗时无法正常关闭一键登录授权界面,尝试过延迟调用获取定位API,可以关闭一键登录授权界面,但会相继弹出请求定位授权弹窗和请求后台定位授权弹窗。
5 个回复
最佳回复
DCloud_Android_YJC
针对先调用uni.closeAuthView()或univerifyManager.close()关闭一键登录页面然后调用需要申请权限的API的情况,可能会出现由于权限申请框弹出导致页面焦点变化导致无法关闭一键登录页面的情况,建议有此需求的开发者,延时调用需要申请权限的API
DCloud_Android_YJC
延迟调用uni.getLocation,相继弹出请求定位授权弹窗和请求后台定位授权弹窗是什么意思?不延迟的话就不会相继弹出请求定位授权弹窗和请求后台定位授权弹窗么?
r***@163.com (作者)
不延迟调用,就只弹出请求定位的授权弹窗,延迟调用会先弹出请求定位的授权弹窗,授权后再弹请求后台定位的授权弹窗。
2023-01-12 17:36
DCloud_Android_YJC
回复 r***@163.com: 我这边没有复现,请提供一个可复现的demo
2023-01-12 18:12
r***@163.com (作者)
回复 DCloud_Android_YJC: demo已提供
2023-01-13 15:24
r***@163.com (作者)
我尝试在demo里复现,发现少说了最关键的一步,就是跳转页面,应该是跳转页面影响了一键登录界面的关闭,继而导致获取定位授权后还需要后台定位授权。
r***@163.com (作者)
这个demo还不是一定必现,我分别出现过正常关闭(罕见)、无法关闭+弹出定位授权(常见)、无法关闭+弹出定位授权+授权后手动关闭一键登录界面出现在第二个页面后又弹了后台定位授权(罕见)
DCloud_Android_YJC
DCloud_Android_YJC
我这么写是没问题的,看是否能满足你的业务需求。同时close登录页面和getLocation是确实是有问题的,页面的焦点发生了变化导致无法关闭登录页面,延时可以解决
2023-01-13 15:41
r***@163.com (作者)
回复 DCloud_Android_YJC: 好的
2023-01-13 16:24