Android usb device

虽然Google宣称从2.3.4以及3.1版本以后开始支持ADK开发,但是现在真正支持ADK开发并不是很多。可以确定的是google亲儿子在使用官方系统包的时候支持ADK开发,比如我手上的Nexus S。市场上那些通过刷机升级到2.3.4以上版本的手机,很多因为底层内核不支持USB Accessory功能,所以无法做ADK开发。比如我手上的V880手机,中兴将USB功能彻底改写了,也没有f_accessory.c这个文件。
     下面介绍一下如何查看自己的手机是否支持ADK功能:
      原理就是检查手机内核是否包含USB Accessory功能
      第一种方法,提取当前手机的内核config文件,查看是否包含USB Accessory功能
             使用命令:adb pull  /proc/config.gz  /home/user_name/androkern/cm-kernel/config.gz
             然后从config.gz文件中解压出.config文件
      第二种方法,从系统刷机包中的boot.img中提取.config
             使用命令:scripts/extract-ikconfig boot.img > .config
       通过查看.config文件来确定有无USB Accessory功能,搜索"CONFIG_USB_ANDROID_ACCESSORY",如果搜索不到或者搜索出来的结果是"CONFIG_USB_ANDROID_ACCESSORY is not set"。
          CONFIG.jpg                                                                     

        内核的问题解决后,可以尝试安装一下,很可能还是安装不上,提示:Installation error: INSTALL_FAILED_MISSING_SHARED_LIBRARY的错误,是因为缺少运行库的原因。
shared library.jpg

你可以把模拟器文件中/system/framework/下面的com.android.future.usb.accessory.jar文件拷到手机的对应目录下,同时需要把/system/etc/permissions/目录下的android.hardware.usb.accessory.xml拷贝到对应目录下,这个目录也被链接到/etc/permissions的.(如果没有root提权需要用adb命令push文件),安装完成后如果不能用记得重启再看看,国外解决这个问题的链接:

https://github.com/ezterry/manifest-gingerbread-DS/issues/32

附件是具有USB Accessory的config文件,供大家参考

还有缺失的com.android.future.usb.accessory.jar与android.hardware.usb.accessory.xml文件,欢迎下载
  缺失文件.zip (1.09 KB, 下载次数: 25)    herring_defconfig (8.48 KB, 下载次数: 14) 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值