全志Android设备增加Usb host ADK 功能
Usb Host ADK是指不采用USB驱动,直接用java与设备编程的
这样让Android 可以无需修改内核和驱动情况下方便与各种USB外设通讯。全志的CPU的资料都是公开的,因此我们在上面开发很多应用。但是发现无法使用usb host 接口。
一.测试
可以简单下载USB Device info 来测试
https://play.google.com/store/apps/details?id=aws.apps.usbDeviceEnumerator
如果用otg 插入一些USB设备,能扫描到信息,就表示adk正常,这是一个开源项目,有兴趣可以下载源码编译运行
https://github.com/alt236/USB-Device-Info---Android
二.解决问题
经过查看发现缺少两个adk所需文件,这两个文件可以直接从Android虚拟机或一般rom升级包抽取,放入设备即可
/system/framework/com.android.future.usb.accessory.jar
/system/etc/permissions/android.hardware.usb.accessory.xml
安装这一些文件需要root权限,全志都是root掉的。
需要安装adb工具,可用如下指令来安装
adb shell mount -o rw,remount /system #将/system变为可写
adb push com.android.future.usb.accessory.jar /system/framework/ #从PC上拷入设备/system目录下
adb push android.hardware.usb.accessory.xml /system/etc/permissions/
adb shell chmod 644 /system/framework/com.android.future.usb.accessory.jar #与其它文件权限一致
adb shell chmod 644 /system/etc/permissions/android.hardware.usb.accessory.xml
这里有一个打包好的附件,如果机器上安装adb,可以直接用在windows/linux/mac 运行即可
http://download.csdn.net/detail/work4blue/8131371
时间: 2024-10-10 16:09:52