微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python 库 easyhid 不需要设置 udev 规则,而类似的库,如用于 Java 的 usb4java 需要它们在 Linux 上工作

如何解决Python 库 easyhid 不需要设置 udev 规则,而类似的库,如用于 Java 的 usb4java 需要它们在 Linux 上工作

最近我做了一个奇怪的观察。我编写了一个小的 python 脚本来使用 easyhid 库与我的键盘进行通信。查找、打开以及向设备发送数据都是开箱即用的。另一方面,使用 Java,我能够找到设备,但无法打开设备(使用 usb4java 和 hid4java 进行测试)。过了一会儿,我发现我确实忘记为该键盘设置 udev 规则。添加该规则后,在 Java 中也可以打开设备。

现在的问题是:如果没有设置udev规则,为什么easyhid仍然有效? Python 和 Java 程序都以相同的用户权限启动。我还发现,两个库都使用相同的主干(hidapi)。这种行为有简单的解释吗?这让我很困惑,因为 python 脚本不应该比 java 程序拥有更多的权限。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。