android USB如何修改VID具体实现

所属分类: 软件编程 / Android 阅读数: 1841
收藏 0 赞 0 分享
1.Android 手机driver端:
[GB Version]
File to modify: alps\mediatek\custom\[Chip]\kernel\usb\src\mtk_usb_custom.h
Modification: VENDOR_ID
[ICS and JB Version]
File to modify: alps\mediatek\config\[Chip]\init.usb.rc
Modification: sys.usb.vid

2:电脑端
PC端请修改 MTK release 的driver 加上 您新加的VID和PID 即可。
请修改 android_winusb.inf

; HTC Magic
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C03&MI_01
参考如上这一句,后面加上贵司的改动。比如:
; ZTE/LENOVO/HUAWEI phone
%CompositeAdbInterface% = USB_Install, USB\VID_XXXX&PID_XXXX&MI_01

3:右击我的电脑->属性->高级->环境变量,添加 ANROID_SDK_HOME 环境变量。如果你有 android SDK, 就设成 SDK 的路径;如果没有,那也没关系,设为你觉得方便的任何路径。

4. 在前面设置的 ANDROID_SDK_HOME 对应的路径下,寻找 .android 目录,如果没有就创建一个;在 .android 目录下新建一个文件,叫 adb_usb.ini, 记住,后缀是 "ini" ;添加前面获得的 VID 到 adb_usb.ini 中,如 0xAAAA。

5. 然后安装 adb 驱动

6. 进入 DOS cmd, 分别输入 adb kill-server, adb start-server, adb devices;若能看到 devices 列出,那么就成功了。
【Note】第3~6步,若貴司的Vendor ID不在Google默認的列表裡,需要這幾步。另外貴司可以與Google聯繫如何將貴司的VID加入。

另外,网络上的参考资料如下:
Android USB VID PID 及 ADB
在 android 设备的 Linux 内核中把 USB 驱动的 PID VID 修改以后,也许之前的 adb 工具就不能识别设备了,会打印出 "device not found" 的提示,特别是 windows ,adb 驱动也不能用了。
这个时候该怎么办呢?

一、先搞清现在的 PID ,VID 为多少,例如分别为 aaaa、bbbb(十六进制)
对于 linux 如 ubuntu, 插入 设备,再查询 /sys/bus/usb/ 下的相应设备,如 "1-1" 下的 idVender, idProduct 获得。
对于 windows, 可从相应设备的属性中获得

二、对于windows
1. 修改 adb 驱动中的 android_winusb.inf 文件。对照着别的项目加就可以了。
例如:
; My product
%CompositeAdbInterface% = USB_Install, USB\VID_AAAA&PID_BBBB
%SingleBootLoaderInterface% = USB_Install, USB\VID_AAAA&PID_BBBB&MI_01
2. 右击我的电脑->属性->高级->环境变量,添加 ANROID_SDK_HOME 环境变量。如果你有 android SDK, 就设成 SDK 的路径;如果没有,那也没关系,设为你觉得方便的任何路径。
3. 在前面设置的 ANDROID_SDK_HOME 对应的路径下,寻找 .android 目录,如果没有就创建一个;在 .android 目录下新建一个文件,叫 adb_usb.ini, 记住,后缀是 "ini" 哦;添加前面获得的 VID 到 adb_usb.ini 中,如 0xAAAA。
4. 然后安装 adb 驱动
5. 进入 DOS cmd, 分别输入 adb kill-server, adb start-server, adb devices;若能看到 devices 列出,那么就成功了。

三、对于linux
1. 在用户的 home 目录下,寻找 .android 目录,如果没有就创建。在 .android 目录下新建一个文件,叫 adb_usb.ini, 记住,后缀是 "ini" 哦;添加前面获得的 VID 到 adb_usb.ini 中,如 0xAAAA。
2. 在 shell 中 分别输入 adb kill-server, adb start-server, adb devices;若能看到 devices 列出,那么就成功了。

这里 kill-server,是 kill 掉 adb 的 daemon,否则,adb 还是保留着先前的 Vender 信息。start-server 就加载了新的 Vender 信息。

注意:有些人可能用 adb 需要超级用户权限,这时第一步中的home 目录应该为 /root,不想麻烦,直接两个 Home 目录都加上得了。
更多精彩内容其他人还在看

使用ViewPager实现android软件使用向导功能实现步骤

现在的大部分android软件,都是使用说明,就是第一次使用该软件时,会出现向导,可以左右滑动,然后就进入应用的主界面了,下面我们就实现这个功能
收藏 0 赞 0 分享

android在异步任务中关闭Cursor的代码方法

android在异步任务中如何关闭Cursor?在我们开发应用的时候,很多时候会遇到这种问题,下面我们就看看代码如何实现
收藏 0 赞 0 分享

Android自定义桌面功能代码实现

android自定义桌面其实很简单,看一个例子就明白了
收藏 0 赞 0 分享

android将图片转换存到数据库再从数据库读取转换成图片实现代码

有时候我们想把图片存入到数据库中,尽管这不是一种明智的选择,但有时候还是不得以会用到,下面说说将图片转换成byte[]数组存入到数据库中去,并从数据库中取出来转换成图像显示出来
收藏 0 赞 0 分享

TextView显示系统时间(时钟功能带秒针变化

用System.currentTimeMillis()可以获取系统当前的时间,我们可以开启一个线程,然后通过handler发消息,来实时的更新TextView上显示的系统时间,可以做一个时钟的功能
收藏 0 赞 0 分享

Android用ListView显示SDCard文件列表的小例子

本文简单实现了用ListView显示SDCard文件列表,目录的回退等功能暂不讨论,获取文件列表,files即为所选择目录下的所有文件列表
收藏 0 赞 0 分享

Android拦截外拨电话程序示例

这篇文章主要介绍了Android拦截外拨电话的示例,大家参考使用吧
收藏 0 赞 0 分享

通过Html网页调用本地安卓(android)app程序代码

如何使用html网页和本地app进行传递数据呢?经过研究,发现还是有方法的,总结了一下,大致有一下几种方式
收藏 0 赞 0 分享

android Textview文字监控(Textview使用方法)

以手机号充值为例,当用户输入最后一位数时候,进行汇率的变换,本文就实现类似这样的功能
收藏 0 赞 0 分享

Android ListView长按弹出菜单二种实现方式示例

这篇文章主要介绍了Android ListView长按弹出菜单的方法,大家参考实现
收藏 0 赞 0 分享
查看更多