3

我正在尝试使用 WebUSB API 通过 Web 与三星 J7 通信。我目前正在使用这个基本代码:

<body>
    <button onclick="myFunction()">Click me</button>
    <script>
        function myFunction() {
        console.log('Clicked');
        var device;
        navigator.usb.requestDevice({ filters: [{ vendorId: 0x04e8 }] })
        .then(selectedDevice => {
                device = selectedDevice;
                console.log('Deive Selected: ');
                console.log(device.productName);
                console.log(device.manufacturerName);
                return device.open(); // Begin a session.
            })
            .catch(error => { console.log(error); });
        }
    </script>
</body>

电话device.open()正在返回

DOMException:设备已断开连接

我用 Chrome 在 Windows 和 Ubuntu 机器上测试了代码。两者都给出了相同的结果。对问题原因有任何帮助吗?

4

1 回答 1

4

如果您还没有这样做,请尝试在本地托管您的网站。file://使用url访问我的测试页面时,我收到了相同的错误消息。在本地托管文件并从http://域访问它们为我解决了这个问题。

在本地托管文件的一种简单方法是从您网站的根目录运行此命令:python2 -m SimpleHTTPServer. 然后,您应该能够在您的浏览器中从域访问该站点http://localhost:8000

于 2018-01-22T01:15:12.537 回答