Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript navigator.mediaDevices.getUserMedia-在HTML5 QR JS代码扫描仪中反向摄像机列表顺序/仅显示后方摄像机_Javascript_Android_Ios_Getusermedia_Rendercontrol - Fatal编程技术网

Javascript navigator.mediaDevices.getUserMedia-在HTML5 QR JS代码扫描仪中反向摄像机列表顺序/仅显示后方摄像机

Javascript navigator.mediaDevices.getUserMedia-在HTML5 QR JS代码扫描仪中反向摄像机列表顺序/仅显示后方摄像机,javascript,android,ios,getusermedia,rendercontrol,Javascript,Android,Ios,Getusermedia,Rendercontrol,我正在为PHP应用程序使用下面的二维码扫描仪来扫描二维码 但是,在Android和iOS上选择摄像头时,列表顺序是前摄像头优先,后摄像头最后。我相信这可能会因设备而异,但有没有办法做到这一点 A) 自动打开后摄像头 B) 仅允许访问背面摄像头 C) 颠倒返回相机的顺序,使底部回到列表的顶部,从而将后摄像头置于列表中前摄像头的上方 谢谢 这是不合理的混乱,很遗憾地说。(为什么?苹果迟迟不肯为getUserMedia()提供一流的支持,我想是因为web应用不必经过应用商店。) 您必须编写一些代

我正在为PHP应用程序使用下面的二维码扫描仪来扫描二维码

但是,在Android和iOS上选择摄像头时,列表顺序是前摄像头优先,后摄像头最后。我相信这可能会因设备而异,但有没有办法做到这一点

A) 自动打开后摄像头

B) 仅允许访问背面摄像头

C) 颠倒返回相机的顺序,使底部回到列表的顶部,从而将后摄像头置于列表中前摄像头的上方

谢谢


这是不合理的混乱,很遗憾地说。(为什么?苹果迟迟不肯为getUserMedia()提供一流的支持,我想是因为web应用不必经过应用商店。)

您必须编写一些代码来查找所需的视频设备。在Android设备中,设备的
.label
属性包含所需相机的字符串
back

在iOS设备中,前置摄像头是
.enumerateDevices()
结果列表中的第一个摄像头。很难使用
.label
属性,因为它本地化为iOS用户自己的语言。(Android不会本地化这些标签。)

如果你要提供一个选择列表,只需对它进行排序,这样在你展示它之前,后面的摄像头是第一位的

这是我对这个话题的研究


我研究了添加
facingMode:“环境”
但是这已经设置好了,所以我尝试了
facingMode:{exact:“环境”}
但是这也不起作用。这回答了你的问题吗?这里添加的JSFIDLE仅供参考-感谢您提供的信息,这不是一个解决方案本身,但无论如何都很有用。。。谢谢如果你能想出更好的办法,请告诉我们。这是一个毛球。根据这个具体例子的API文档,有可能,你看过附件了吗?这是一个二维码扫描仪,但也许同样的逻辑可以应用?