【发布时间】:2011-11-20 03:15:50
【问题描述】:
我想在我的 Android 应用程序中使用 libusb(java GUI + 本机(C++)核心)。我已经编译了 libusb 并尝试调用它的函数,但是 libusb_open 返回 LIBUSB_ERROR_ACCESS。我想USB访问权限有问题,但我不知道如何解决这个问题。所以,这里有两个问题: 1) 如何让 libusb 在有根的 Android 3.1 设备上运行? 2) 是否可以在无根、出厂默认设备上使用 libusb?
提前致谢。
P。 S. 至于问题 1,我已经为 /dev/bus/usb 尝试了 chmod 666,但它显示“权限被拒绝”(注意我的设备已植根)。
附言mount usbfs none /proc/bus/usb -o devmode=0666 甚至不执行,好像我拼错了什么(但我没有)。
我确信可以让 libusb 在具有 USB 主机的根 Android 设备上运行,但我从未管理过它,因此我不得不将应用程序限制为 Android 3.1+ 并使用 USB API。
【问题讨论】:
-
您显然正在使用 Android 3.1,您是否考虑过在 Android SDK 中使用 USB APIs?
-
@Frxstrem:是的,我不得不求助于那个解决方案。我对它不太满意,但它可以工作,而且它是在 Android 上使用 USB 的标准方式,所以我想我应该结束这个问题。
-
不要关闭,直接回答。
-
你试过
sudo chmod 666用于/dev/bus/usb 吗? -
@SergeyK.:我相信我做到了。但不能肯定地说。我放弃了使用
libusb,只使用了标准的Android USB API,无论如何这是正确的方法。