標籤:android
全志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
全志Android裝置增加Usb host ADK 功能