chrome.hid.getDevices()和chrome.usb.getDevices()没有返回任何结果

时间:2016-04-13 05:09:13

标签: macos usb google-chrome-app hid google-chrome-os

我遇到了chrome.hid.getDevices()chrome.usb.getDevices()未返回结果的基本问题。好吧,它是一个PEBKAC,不确定我哪里出错了,希望你们能帮忙。

我已根据Chrome开发人员文档设置minimal examplemanifest.json设置具有访问USB和HID的正确权限。实验API标志在chrome://flags中设置。系统信息显示连接的USB设备的完整列表。

在Mac OS X 10.10.5上的Chrome稳定版本49.0.2623.112(64位)和Chrome操作系统上的Chrome稳定版本49.0.2623.111上进行了测试。

运行示例后,我发现chrome.hid.getDevices()chrome.usb.getDevices()没有返回任何设备。 chrome.usb.getUserSelectedDevices()确实显示USB对话框;在Mac OS X上,它已正确填充,在Chrome OS上没有设备。

希望有人可以把我拉向正确的方向。谢谢你。

1 个答案:

答案 0 :(得分:1)

您的回购中的示例存在一些小问题。首先,根据chrome.usb API文档,您必须在清单中的权限下为每个要使用的设备添加vendorIdproductId对:

https://developer.chrome.com/apps/app_usb#manifest

例如:

"permissions": ["usb",
    {
        "usbDevices": [
            {
                "vendorId": 1626,
                "productId": 40961
            }
        ]
    }
]

您可以使用chrome.usb.getUserSelectedDevices示例输出获取ID。

其次,您的chrome.usb.getDevices()示例正在尝试使用chrome.hid.getDevices()