libusb_open在jni android中返回LIBUSB_ERROR_ACCESS

时间:2019-06-15 06:30:16

标签: c++ android-ndk java-native-interface libusb

我想使用 libusb1.0.22 从ROOTed安卓设备( 4.4 )中的c ++本机代码访问USB设备。首先,我成功调用libusb_init,然后调用libusb_open,但出现 LIBUSB_ERROR_ACCESS 错误。为什么在植根设备时发生此错误?


1 个答案:

答案 0 :(得分:0)

A

您还必须在植根设备上获得权限! (例如linux ...)

(1)您必须关闭SELinux(setenforce 0)

(2)在USB连接到Android设备之后,您必须授予文件权限(chmod 666 / dev / bus / usb / * / *)。如果您只有一个USB端口,则可以通过wifi使用adb进行操作。 (或更改设备规则以连接具有666个权限的USB设备节点)

(*)您可以使用“ adb shell运行身份”检查您的应用权限。

B

(1)您需要检查您的设备是否还在主机模式下工作。

(2)您需要检查USB电缆是否为OTG。