在最新版本的 Chrome 中,当 Flash 应用程序寻求网络摄像头权限时,用户会看到两个权限对话框:
为了让 flash 访问网络摄像头媒体流,用户必须接受 flash 安全对话框和 chrome 安全对话框。问题是(据我所知)没有办法确定用户是否/何时接受或拒绝了 native 权限栏。
我们尝试在开始 Flash 录制之前从 chrome 获得网络摄像头许可(使用 getUserMedia),但事实证明,当 Flash 开始录制时,它会触发新媒体流的第二个安全提示(也就是说,chrome 授权每个流而不是每个页面)。
这个新的“功能”似乎没有经过深思熟虑,它将扼杀 Flash 视频录制/流媒体应用程序。
有没有人知道从安全栏获取回调(成功/失败)的方法,该回调是由 Flash 尝试访问网络摄像头触发的?
最佳答案
如果用户在 Flash 隐私面板中选中了允许和记住选项,您可以观看麦克风的事件级别属性。用户单击接受按钮后,activityLevel 的值将从 -1 更改为 0 或正数。
要检测点击拒绝按钮,您必须检测系统通知已关闭。为此,请注意 JavaScript 中 window.height 属性的变化。
关于Chrome 28 中的 Flash 与 native 网络摄像头权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17369297/