遇到一个比较奇葩的问题特此記录:
但是当真正用到该权限时,却又弹出权限申请框
// 而权限校验的变量 // 进行判断时,下面表示已允许很显然返回的始终是 允许,但昰在使用时仍会弹出权限申请框
窃以为,是厂商管家之类的对权限的获取进行了修改
- 进行伪权限判断(延时判断,超时则默认没有权限而不进行下一步操作)
- 进入下一页,但是因为没有权限无法使用相关功能,直到获取到权限
- 进入下一页在访问权限失败的地方 finish 掉當前页面
需要注意的是,获取存储权限后写入文件时不同機型处理也不相同。
开始录制时需要计时器计时展示。
在等待选择允许还是禁止录音权限的时候界面已经变为录制中状态,计时器开始跑了起来! 最困扰我们的就是无法监测 vivo 或 oppo 的软件管家是否赋予了权限,如果可以就不需要这么多绕圈圈的方法了。
想到了一个釜底抽薪的办法我们没办法监测软件管家的权限授予,却可以监测是否已经开始录音!
比如监测 当前录音状态是否开始,或者是否产生了錄音文件
采用第一种方法,监测录音状态是否已开始录音
// 必须执行 startRecording ,才能让软件管家监测到录音从而弹出权限弹窗。 // 在 finally 中进行录音狀态判断是否已经开始录音。状态为开始录音才进行下一步操作。源码中录音状态有两种,一目了然
看到一篇感觉不错,记录下來希望有用。