我正在开发一个Android应用程序,使用 OTG 电缆从 Android 设备与 iOS 设备进行通信。我使用的是 Android 端口版libimobiledevice library。该库包含共享库(.so文件)和二进制可执行文件,以使用 usbmuxd 的概念在Android和iOS设备之间建立通信。
此库需要将某些.so文件(共享库)安装到“/ vendor / lib”位置,并将某些二进制可执行文件安装到“/ vendor / bin”< / strong>即可。经过研究,我了解到如果Android设备 rooted ,则可以访问这些位置。
我有以下问题:
我已经在我的MOTO-X上测试了这个库没有root ,我无法从我的Android应用程序中检测到附加的iOS设备。
我很感激有关此主题的任何建议。提前谢谢。
答案 0 :(得分:0)
从您链接的github repo,安装位置可以更改(在android / install.sh中),您是否尝试过安装任何其他位置(如SD卡或数据)?
对于你的问题:
供应商文件夹进行了标记,并链接到 system / vendor ,并使用 system_file ,此位置的访问权限由SEAndroid sepolicy控制。
ls -Z供应商
lrwxrwxrwx root root u:object_r:rootfs:s0 vendor - &gt; /系统/销售商
ls -Z系统
drwxr-xr-x root shell u:object_r:system_file:s0 vendor
我建议您先尝试其他地点。或者尝试在jni中使用它 方式是什么?
希望这可以提供帮助。