谷歌Android USB驱动程序和亚行

时间:2012-03-14 19:55:41

标签: android windows adb inf

我正在寻找以下指导或明确答案。我想使用Google Android USB驱动程序并修改android_winusb.inf以支持任意数量的Android设备。我能够成功添加HTC Evo平板电脑,但是当我尝试添加LG(Optimus)或三星(Indulge,Admire)时,驱动程序似乎安装得很好,但亚行看不到它。

你能让Google Android Driver适用于任何Android手机吗?如果是这样......怎么样?

我尝试了%SingleAdbInterface%%CompositeAdbInterface%的许多排列,以及供应商和产品ID的变体。

9 个答案:

答案 0 :(得分:84)

您需要修改3项内容才能使Google USB驱动程序适用于任何Windows上的任何Android手机:

  1. 将您设备的ID添加到android_winusb.inf文件
  2. 对修改过的驱动程序进行数字签名
  3. 将您设备的供应商ID添加到adb_usb.ini白名单(不再需要)
  4. 以下是详细信息:

    <强> 1。将您设备的ID添加到android_winusb.inf文件

    要添加的格式为:

    ;Comment usually the device name
    %SingleAdbInterface% = USB_Install, USB\; here you put VID and PID
    %CompositeAdbInterface% = USB_Install, USB\; same as above but add the MI
    

    在我继续之前,VID是USB供应商ID。

    如何获得视频和pid:它们在你正在合并的驱动程序中;但如果您没有该设备的驱动程序,您可以通过打开设备管理器获取它;然后右键单击设备 - 选择属性 - 在新对话框中转到详细信息选项卡&gt;在属性下拉菜单中选择硬件ID。例如,你看到类似的东西:

    hid

    USB\VID_2207&PID_0000&REV_0222&MI_01
    USB\VID_2207&PID_0000&MI_01
    

    为复合adb设备获取此值并删除单个adb设备的MI,您将获得

    ;MSI WindPad Enjoy 7 plus
    %SingleAdbInterface%        = USB_Install, USB\VID_2207&PID_0000
    %CompositeAdbInterface%     = USB_Install, USB\VID_2207&PID_0000&REV_0222&MI_01
    ;
    

    将此2行TWICE,一次复制到[Google.NTx86]部分,将另一行复制到[Google.NTamd64]部分

    为您要支持的每个设备重复

    现在是[Strings] Section的可选编辑:编辑

    [Strings]
    ProviderName                = “Google, Inc.”
    SingleAdbInterface          = “Android ADB Interface”
    CompositeAdbInterface       = “Android Composite ADB Interface”
    SingleBootLoaderInterface   = “Android Bootloader Interface”
    WinUSB_SvcDesc              = “Android USB Driver”
    DISK_NAME                   = “Android WinUsb installation disk”
    ClassName                   = “Android Device”
    

    要:

    [Strings]
    ProviderName                = “Google, Inc.”
    SingleAdbInterface          = “MSI ADB Interface”
    CompositeAdbInterface       = “MSI Composite ADB Interface”
    SingleBootLoaderInterface   = “MSI Bootloader Interface”
    WinUSB_SvcDesc              = “MSI USB Driver”
    DISK_NAME                   = “MSI WinUsb installation disk”
    ClassName                   = “MSI Tablet”
    

    <强> 2。对修改过的驱动程序进行数字签名:

    虽然最初的谷歌usb驱动程序是由谷歌签署的,但修改android_winusb.inf会阻止在Windows 8上安装它,显示错误消息 hasherror

    The hash file is not present in the specified catalog file. The file is likely
    corrupt    or the    victim of tampering.
    

    仅适用于Windows 8. Windows 7或更早版本不显示此错误消息。您必须重新生成目录文件(可能使用Windows SDK)并签名

    解决方法:内部测试的解决方法是临时或永久地进行窗口签名验证:

    临时

    转到屏幕左上角或下角打开超级按钮栏并单击设置超级按钮。

    选择更改电脑设置

    选择常规

    向下滚动,然后点击“高级启动”下的“立即重启”。

    点击“疑难解答”。 点击“高级选项” 点击“Windows启动设置” 单击“重新启动”。

    运行cmd  并输入:

    shutdown -o -r -t 0
    

    然后重新启动后从列表中选择“禁用驱动程序签名强制执行”。在重新启动之前安装驱动程序。

    永久:

    按Window + Q

    搜索cmd

    右键单击cmd

    从操作栏中选择以管理员身份运行

    输入cmd:

    bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
    bcdedit -set TESTSIGNING ON
    

    第3。将您设备的供应商ID添加到adb_usb.ini白名单(不再需要):

    adb曾经拥有受支持的供应商ID的硬编码白名单。如果您的设备的供应商不在列表中 - adb完全忽略它。要使adb识别此类设备,用户必须手动将其供应商ID添加到%USERPROFILE%\.android\adb_usb.ini - 每行一个ID。

    在命令行中:

    echo 0x2207 >> "%USERPROFILE%\.android\adb_usb.ini"
    

    幸运的是,Google已删除了最新adb版本中的VendorID过滤功能。因此不再需要此步骤。

    最后,您可以通过以下方式测试安装:

    adb kill-server
    adb start-server
    adb devices
    

    并在Android设备上的开发者选项中启用调试

    这应该重新启动ADB服务器并列出设备。如果驱动程序正常工作,则应列出该设备。

答案 1 :(得分:8)

你能给我们一个更好的描述和你正在做的事情的一个例子吗?因为我所要做的就是将设备放在那里,然后保存文件。现在只需重新连接设备即可。

我通常使用类似于这一行的东西:

;
;some name for the phone (this seems to be arbitrary)
%CompositeAdbInterface%     = USB_Install, THE_HARDWARE_ID

我做的是:

  1. 将设备插入计算机。
  2. 转到您的设备管理器。
  3. 右键单击您插入的设备。
  4. 转到属性。然后选择硬件ID。
  5. 然后获取那里列出的值。
  6. 现在将其添加到您在android_winusb.inf中创建的行中。
  7. 拔下设备并重新插入
  8. 返回设备管理器
  9. 右键单击设备,然后单击“更新或安装驱动程序”
  10. 选择在计算机中搜索驱动程序
  11. 选择目录  Your_Android_SDK_Directory/extras/google/usb_driver/
  12. 按ok
  13. 这似乎总是对我有用,是你在做什么?或者这甚至有帮助吗?

答案 2 :(得分:7)

找到以下文件

  

C:\Users\ [您的名字] \.android\adb_usb.ini

并进行以下更改:

# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x2207

我在文件中添加了0x2207。此编号是硬件ID的一部分,可在设备的硬件信息下找到。

我是:

USB\VID_2207&PID_0010&MI_01

(我尝试执行android update adb,但它没有做任何事情。)

答案 3 :(得分:1)

答案1对我来说非常合适。我在新的MID 10'平板电脑上进行了测试。以下是我在.inf文件中添加的行,安装时没有问题:

;Google MID
%SingleAdbInterface%        = USB_INSTALL, USB\Vid_18d1&Pid_0003&MI_01
%CompositeAdbInterface%     = USB_INSTALL, USB\Vid_18d1&Pid_0003&Rev_0230&MI_01 

答案 4 :(得分:1)

  1. 修改android_winusb.inf
  2. 签署驱动程序
  3. 修改adb
  4. 我还从http://adbdriver.com/启动了通用adb驱动程序 它有效。

答案 5 :(得分:0)

对于我的Azpen A727,Windows驱动程序安装正确,因此只需要穆罕默德答案的第3步。

答案 6 :(得分:0)

看起来Google USB驱动程序已更新为支持Glass开箱即用,因此只要您使用最新的驱动程序,您就可以通过ADB访问Glass。在我的特殊情况下,我在2014年中期的某个时候将Glass连接到了我的机器,但没有做任何事情。现在,当我尝试连接它时,尽管出现在设备管理器中,我仍然不会在ADB中看到它。经过多次反复试验,我发现我必须:

  1. 进入设备管理器
  2. 右键点击“SAMSUNG Android Phone”下的“Android ADB界面”
  3. 点击“卸载”。确定 选中“删除此设备的驱动程序软件”。
  4. 断开并重新连接Google Glass。
  5. 然后我可以通过常规Windows更新重新安装驱动程序。这迫使它寻找最新的驱动程序。不知道为什么以前没有更新,但我希望这会帮助那些仍然在努力解决这个问题的人。

答案 7 :(得分:0)

找不到华为的驱动程序。所以我一直在使用通用ADB驱动程序:

  • 下载this
  • 提取ADBDriverInstaller并运行该文件。确保已通过USB将设备连接到计算机。
  • 显示一个窗口。
  • 单击“安装”。
  • 将出现一个对话框。它会要求您按下Restart按钮。

在此之前阅读this链接

(The above. in brief, says to press Restart button in the dialog box. Select Troubleshoot. Select Advance Option. Select Startup Setting. Press Restart. After system's been restarted, on the appearing screen press 7)

  • 重启PC后,再次运行ADBDriverInstaller文件。从选项中选择您的设备。按安装。

已经完成了:)

答案 8 :(得分:-1)

而不是修改adb_usb.ini文件我对目录android-sdk \ extras \ google \ usb_driver \下的文件 android_winusb.inf 进行了更改,它适用于平板电脑MID Q88但我复制了两个部分[Google.NTamd64]和[Google.NTx86]

;Google MID Q88
%SingleAdbInterface%        = USB_INSTALL, USB\VID_18D1&PID_0003&MI_01
%CompositeAdbInterface%     = USB_INSTALL, USB\VID_18D1&PID_0003&REV_0230&MI_01