Java 安卓L 5.0&;libusb1.0.9-没有权限?

Java 安卓L 5.0&;libusb1.0.9-没有权限?,java,android,android-ndk,libusb,Java,Android,Android Ndk,Libusb,我目前有一个Android应用程序通过USB OTG连接到设备。 通信是使用libusb1.0.9完成的,对于api级别

我目前有一个Android应用程序通过USB OTG连接到设备。 通信是使用libusb1.0.9完成的,对于api级别<21的其他设备,它工作得非常好。 (由于性能问题,通信必须是本机的) 在Android L下运行应用程序时,我从libusb_init(NULL)中得到以下错误:

我正在Nexus5上使用最新的NDK10C编译libusb1.0.9。 我不认为这是ART运行时问题,因为该应用程序在Android 4.4.4上运行时启用了ART,而不是Dalvik。 有人熟悉这个问题吗?(看起来很像) 这和派有关吗


谢谢。

我上传了一个有效的解决方案。 它基于libusb1.0.9,使用棒棒糖


“我认为这是艺术”--应该是“我不认为这是艺术…”吗?是的,谢谢你的更正(Go:)看起来selinux拒绝了你。谢谢Dan。在我的nexus 5上安装“SELinuxModeChanger”并将SELinux模式更改为Permissive似乎可以解决问题。问题是如何使我的应用程序在默认强制模式下工作。可能重复谢谢!这修复了权限问题。
type=1400 audit(0.0:107): avc: denied { read } for name="usb" dev="tmpfs" ino=24433 scontext=u:r:untrusted_app:s0 tcontext=u: object_r:usb_device:s0 tclass=dir
A/libc(12605): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 12605 (mapp.sdk.sample)