我在Firefox(77.0)32-Bit版本中使用MediaDevices.ondevicechange事件时遇到了问题,该事件根本没有被触发。在Firefox (77.0) 64-Bit版本中,代码可以正常工作。我的机器是一台64位的Windows 10台式电脑。
上的例子 官方网站 也不工作--在32位Firefox中,它无法检测到设备变化。
有人遇到过这个问题吗?这是一个错误还是预期的行为?
有没有办法用javascript区分Firefox 32-Bit和64-Bit?我不知道有什么方法可以用功能检测来区分,因为它们的行为是一样的(代码方面)。如果有,我至少可以实现某种回退。
如果有的话,我至少可以实现某种回退。
关于如何区分32位和64位问题的广泛讨论,请参阅。
当涉及到32位和64位版本的Firefox时,应该是没有区别的。devicechange
事件。
我猜测您在两个版本中使用了不同的配置文件,并且您已经将持久的 摄像或麦克风许可 的网站,而不是其他。
火狐浏览器有一个 虫子 这限制了 devicechange
事件的页面,这些页面要么已经在积极使用摄像头或麦克风,要么已经被授予了持久的摄像头或麦克风权限(您已经检查了 ☑ Remember this decision
)在过去。
你可以在Firefox中测试它 此处:
Start camera!
按钮并共享相机。这个bug希望能尽快解决。