android 开发录音弹出"权限管理"问题

主要是针对聊天:长按录音按钮,进行录音,并弹出dialog显示录音动画,松开按钮结束录音。6.0及以上手机会有各种的权限提示dialog。录音按钮是响应的onTouch事件,所以就造成我的按钮在onkeydown时去初始化录音并显示dialog动画时,弹出,我的界面控件失去焦点,当我去选择权限时,控件无法捕获onkeyup或者onkeymove事件,不能及时消除dialog动画效果。

解决方式:

1、对录音控件进行设置监听 View.OnTouchListener

2、如果没有权限的Dialog弹窗,当我们点击录音他会执行 MotionEvent.ACTION_DOWN,这时候就弹出了“权限管理”的系统弹窗/第三方的权限管理弹窗

3、当你点击 权限管理 弹窗的“允许”按钮之后,手指就会抬起,离开录音控件,然后Debug调试它并没有执行 MotionEvent.ACTION_UP,而是执行  了 MotionEvent.ACTION_MOVE、MotionEvent.ACTION_CANCEL 两个事件。

4、所以最终我之前在 MotionEvent.ACTION_CANCEL 事件中 关闭录音、取消动画,由此解决该问题!

注:具体还的视情况而定:在 onTouch 事件中的 defalut 注释一个属性也可!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容