2016-10-13 00:16:48 点击量:11 标签: 收藏本文
flex Security.showSettings 的一个权限bug
flash自己更新后,线上跑得好好的程序出了一个bug,如果用户第一次拒绝使用摄像头,以后通过 Security.showSettings(SecurityPanel.PRIVACY) 来调出权限选择框,无论用户选择 允许 和 拒绝 ,都会提示 Camera.Muted Microphone.Muted ,但其实这时候Camera Microphone 都已经能用了,我们该如何在代码里面判断呢
- var mic:Microphone;
- mic = Microphone.getEnhancedMicrophone();
- if(mic.muted){
- mic.setLoopBack(true);//这里是触发系统的权限框,比Security.showSettings(SecurityPanel.PRIVACY)友好
- mic.addEventListener(StatusEvent.STATUS,audio_statusHandler);
- }
- private function audio_statusHandler(evt:StatusEvent,type:int,uid:int):void {
- printLog("audiostatus:"+evt.code);
- if(mic.muted == false){//这里是关键,我们不依赖于系统给我们返回的怪异状态了,还好mic.muted是正常的,就用它了
- //酷播cuplayer.com提示:正常逻辑代码
- mic.removeEventListener(StatusEvent.STATUS,audio_statusHandler);
- return;
- }
- switch (evt.code) {
- case "Microphone.Unmuted": //酷播cuplayer.com提示:允许
- 正常逻辑代码
- mic.removeEventListener(StatusEvent.STATUS,audio_statusHandler);
- break;
- case "Microphone.Muted": //酷播cuplayer.com提示:拒绝
- break;
- }
- }
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室