帖子
帖子
用户
博客
课程
12下一页
返回列表 发新帖
显示全部楼层
90
帖子
2
勋章
941
Y币

[问题求助] iOS权限请求点不允许跳系统设置问题

[复制链接]
发表于 2024-6-19 11:54:55
本帖最后由 中保云科技 于 2024-6-19 13:59 编辑

权限请求提示如下:

微信图片_20240619114951.jpg

授权回调处理如下:

微信图片_20240619115128.png
微信图片_20240619115133.png

微信图片_20240619115137.png
微信图片_20240619115141.png

请求权限后,完全没有二次请求权限的操作,不知道哪位大佬帮忙看看什么问题?


不知道你在说什么,是遇到什么问题。具体说一下,你遇到了什么问题。
90
帖子
2
勋章
941
Y币
chyd④④⑤⑤②⑦⑧⑤② · 2024-6-19 13:33不知道你在说什么,是遇到什么问题。具体说一下,你遇到了什么问题。

相册请求权限后,点不允许,会跳到系统设置
0
帖子
2
勋章
1646
Y币
你需要是用hasPermission去进行权限判断,使用requestPermission请求的话,如果该权限未获得授权,就会自动跳转到设置页面。

你再requestPermission的回调中,又进行了权限的申请。

你可以按下面操作,验证我说的是否正确,就是你将你上面代码中api.requestPermission回调中的函数方法都注释掉(就是setTimeout 和 api.execScript),应该就不会有跳转。
或者你自己新建一个空白的应用,就使用一个api.requestPermission请求你上面的权限,然后回调中,仅打印一下,啥也不做。如果还出现跳转,那就是系统行为,如果没出现跳转到设置页,就证明是你自己项目代码的问题,你可以自己去进行进一步排查
90
帖子
2
勋章
941
Y币
本帖最后由 中保云科技 于 2024-6-19 14:31 编辑
至高吾·尚 · 2024-6-19 14:10你需要是用hasPermission去进行权限判断,使用requestPermission请求的话,如果该权限未获得授权,就会自动跳转到设置页面。

你再requestPermission的回调中,又进行了权限的申请。

因为iOS有第一次获取过后就不弹窗问题,每次测试都得卸载重装。。然后我卸载重装两次后,发现点不允许都不会进系统设置了。。怎么测试都重现不了问题..不知道什么情况
重启手机都没有用
90
帖子
2
勋章
941
Y币
中保云科技 · 2024-6-19 14:30因为iOS有第一次获取过后就不弹窗问题,每次测试都得卸载重装。。然后我卸载重装两次后,发现点不允许都不会进系统设置了。。怎么测试都重现不了问题..不知道什么情况
重启手机都没有用
...

而且我全局搜索了一下,就这两个地方有请求权限,第一个执行了,第二个肯定是没有执行的
0
帖子
2
勋章
1646
Y币
我看你的代码,在最开始调用api.requestPermission后,手机弹窗权限申请提示,然后你点拒绝
这是程序进入了api.requestPermission的回调中,里面的if语句,会调用 openFrames函数方法,同时传入形参true
openFrames(true)执行,调用了内部if语句,执行了openQxpz方法,同时传入的形参flag(其值为true)
openQxpz(true)执行,因为!flag为假值,所以if(!flag)会走入else语句分支,执行aMap的相关语句,
因为aMap插件内部需要定位权限,而你上面拒绝了相关权限,所以触发了强制跳转到设置页的逻辑

也就是说你自己的编码逻辑有瑕疵,在用户拒绝的时候,也启动了相关需要权限的逻辑。
你应该在每一个会用到相关权限的功能前,都加入api.hasPermission判断,因为入口的同意判断并不可靠,及时用户当时授权了,用户可能也会在使用应用的某个时间切出去,取消该权限的授权,从而导致你程序出现Bug,所以最佳实践是在具体涉及调用某权限前,单独调用api.hasPermission去进行一次该权限的判断
中保云科技 · 2024-6-19 13:59相册请求权限后,点不允许,会跳到系统设置

如果权限拒绝过,那么下次获取这个权限就是直接跳到系统设置。你们肯定是有请求权限,排查一些代码。
90
帖子
2
勋章
941
Y币
chyd④④⑤⑤②⑦⑧⑤② · 2024-6-19 18:03如果权限拒绝过,那么下次获取这个权限就是直接跳到系统设置。你们肯定是有请求权限,排查一些代码。

代码里面就这两个地方有请求,其他地方没有。。
中保云科技 · 2024-6-20 09:06代码里面就这两个地方有请求,其他地方没有。。

仔细排查一下吧,没有请求,是不会自动跳的,或者你们单独页面写一个只请求一次的验证一下,看看会不会跳。
12下一页
您需要登录后才可以回帖 登录

本版积分规则