Reactjs 如何在web应用程序中连接手机中的外部USB摄像头?

Reactjs 如何在web应用程序中连接手机中的外部USB摄像头?,reactjs,google-chrome,camera,usb,Reactjs,Google Chrome,Camera,Usb,我正在尝试将外置微型USB摄像头连接到手机上的web应用程序 我已经可以将其连接到笔记本电脑和其他计算机上,但无法在手机浏览器(如Chrome浏览器)中连接外部USB摄像头 我已经构建了一个reactjs web应用程序,它在我获得许可后检索设备中的媒体设备 navigator.mediaDevices.getUserMedia() 我使用上述代码从设备获取检索所有媒体设备的权限 navigator.mediaDevices .enumerateDevices() .

我正在尝试将外置微型USB摄像头连接到手机上的web应用程序

我已经可以将其连接到笔记本电脑和其他计算机上,但无法在手机浏览器(如Chrome浏览器)中连接外部USB摄像头

我已经构建了一个reactjs web应用程序,它在我获得许可后检索设备中的媒体设备

 navigator.mediaDevices.getUserMedia()
我使用上述代码从设备获取检索所有媒体设备的权限

  navigator.mediaDevices
     .enumerateDevices()
     .then(devices => {})
我使用上述代码获取所有媒体设备。 然后将它们连接到名为react webcam的软件包上。 其中,我链接了要连接到react网络摄像头组件的媒体设备的设备id

现在,这在计算机上可以很好地工作,但在电话上却不行。 在手机中,它仅检索设备内部的媒体设备,而不检索外部USB摄像头

因此,我编写了代码,以便获得插入设备的USB权限。(我使用OTG插入相机)。 但一旦我获得USB权限,我就有了供应商id和产品id。但它不会连接到web应用程序中的react网络摄像头组件。由于react网络摄像头组件接收设备id,但不接收供应商id和产品id,我在手机的Chrome浏览器中获得USB权限后才获取产品id和供应商id

  navigator.usb.requestDevice({ filters: [] })
    .then(selectedDevice => {
 selectedDevice.open()

    }).then(data=>{

navigator.mediaDevices
         .enumerateDevices()
         .then(devices => {})

})
在上面的代码中,当我在手机中获得USB权限时,我检索媒体设备,但我仍然没有在媒体设备列表中获得外部USB摄像头。我只能检索内部媒体设备。 如果我可以在媒体设备列表中列出外部usb摄像头,我可以将其连接到react网络摄像头组件并获得预览

const videoConstraints1 = {
      width: { min: 1920 },
      height: { min: 1920 },
      facingMode: "user",
      deviceId: { exact: "xxxxxxxxxxxxxxxxxxxxxxxxxxx"}
    };
上面是我可以传递给react网络摄像头组件的视频约束,我只能定义要连接的设备id,USB权限承诺仅检索供应商id和产品id

是否有方法将外部网络摄像头连接到网页,并在移动设备中获取预览

预期结果:

在enumerate devices(枚举设备)功能中获取外部媒体设备当授予chrome访问手机浏览器中外部USB摄像头的权限时,返回或检索设备id

实际结果:

enumerateDevices()函数不返回手机浏览器媒体列表中的外部usb摄像头, 即使授予USB权限,也无法从手机浏览器内部的外部USB摄像头获取预览

有没有办法在手机中连接外置usb摄像头,并在网络应用中预览摄像头

多谢各位