2012-03-14 104 views
36

我在尋找關於以下內容的指導或明確答案。我想使用Google Android USB驅動程序並修改android_winusb.inf以支持任意數量的Android設備。我能夠成功添加HTC Evo平板電腦,但是當我嘗試添加LG(Optimus)或三星(Indulge,Admire)時,驅動程序似乎安裝正常,但亞行看不到它。Google Android USB驅動程序和ADB

您可以讓Google Android驅動程序適用於任何Android手機嗎?如果是這樣......怎麼樣?

我已經嘗試了%SingleAdbInterface%%CompositeAdbInterface%的許多變體,其中包括Vendor和Product ID的變體。

+0

轉到支持網站的設備製造商。對於通用驅動程序無法工作的設備,製造商通常會提供可下載的驅動程序以啓用亞行。 – FoamyGuy 2012-03-14 20:19:53

+0

你有沒有試過我的建議呢?如果有效,請+1並接受爲答案。這將有助於提高你的個人資料,並使人們更有可能在未來幫助你。謝謝 – prolink007 2012-03-15 13:50:42

+0

我想*不*支持多個設備驅動程序。我有一個應用程序通過ADB與Android設備交談,我不想管理n個驅動程序的安裝。我也不希望用戶不必擔心安裝多個驅動程序。 – pqu3 2012-03-15 16:24:51

回答

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

這似乎總是爲我工作,就是你在做什麼?或者這甚至有幫助?

+0

我有一個應用程序,談到android設備通過ADB,我不想管理n個驅動程序的安裝。我也不希望用戶不必擔心安裝多個驅動程序。 – pqu3 2012-03-15 16:25:18

+0

我嘗試了上面列出的手機的方法,但沒有工作。我嘗試了HTC Evo,它的確如此。與三星或LG沒有運氣。 – pqu3 2012-03-15 16:26:02

+0

我不確定在這點之外要做什麼。這對我來說總是有效,我不能重新產生問題。 – prolink007 2012-03-20 17:17:51

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 
+0

添加行後,你會做什麼?它如何識別和安裝驅動程序? – Slartibartfast 2012-08-01 06:29:37

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 

I a dld 0x2207到文件。該號碼是硬件ID的一部分,可在設備的硬件信息下找到。

我的是:

USB\VID_2207&PID_0010&MI_01

(我試過執行android update adb,但什麼也沒做。)

83

您需要修改,以便使谷歌的USB驅動器適用於任何Android手機的三件事在任何Windows:

  1. 添加設備的ID來android_winusb.inf文件
  2. 數字簽名修改後的驅動程序
  3. 設備的供應商ID添加到adb_usb.ini白名單(不再需要)

和下面是詳細信息:

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。

如何獲取vid和pid:它們在您正在合併的驅動程序中;但是如果你沒有設備的驅動程序,你可以通過打開設備管理器來獲得它;然後右鍵單擊設備 - 選擇屬性 - 在新對話框中,轉到屬性下拉菜單中的詳細信息選項卡>選擇硬件ID。比如你看到這樣的:

hid

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

藉此值複合ADB設備並刪除MI單ADB設備,你會得到

;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線兩次,一次到[Google.NTx86]部分和另一個到[Google.NTamd64]部分

重複您想要支持的每個設備

現在可選的編輯爲[strings]部分:編輯

[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),並簽署

解決方法:一種內部tesing的解決方法是魔鬼窗口簽名驗證:暫時或永久:

暫時:

向左走屏幕的上角或下角打開魅力欄並單擊設置魅力。

選擇更改電腦設置

選擇一般

向下滾動,並點擊「立即重新啓動」下的「高級啓動」。

單擊「疑難解答」。 單擊「高級選項」 單擊「Windows啓動設置」 單擊重新啓動。

運行CMD 和類型:

shutdown -o -r -t 0 

然後重新啓動從列表中選擇「禁用強制驅動程序簽名」之後。重新啓動前安裝您的驅動程序。

永久:

按窗口+ 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" 

幸運的是,谷歌已經刪除的廠商ID過濾在最近adb版本。所以這一步不再需要。

最後,你可以通過安裝測試:

adb kill-server 
adb start-server 
adb devices 

並啓用Android設備

這對開發者選項調試應重新啓動ADB服務器和列表中的設備。如果驅動程序正常工作,則應列出設備。

+2

非常感謝,它節省了我很多時間。我忘記了Windows 8需要在安裝設備之前禁用簽名。 Happy code – edisonthk 2013-06-16 06:02:12

+1

@edisonTHK歡迎您! – 2013-06-16 14:19:14

+1

哇作品像一個魅力iBall幻燈片選項卡:-) – 2013-10-19 12:59:10

-1

而不是修改adb_usb.ini文件I目錄下Android的SDK \演員\谷歌就這一文件變化android_winusb.inf \ usb_driver \單獨和它的工作的平板MID Q88但我複製兩節[谷歌.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 
+2

嗨!歡迎來到stackoverflow。但是,添加已經提供的答案的用途是什麼? – 2013-04-30 20:34:07

0
  1. 修改android_winusb.inf
  2. 註冊駕駛員
  3. 修改ADB

我也從http://adbdriver.com/ 安裝通用adb驅動程序,它的工作原理。

+1

答案很差,但是相關的通用驅動程序非常好,非常通用!可能的是,它自動執行前兩個操作。 – MKaama 2016-01-09 15:01:22

0

對於我的Azpen A727,Windows驅動程序安裝正確,所以只需要Mohammad答案的第3步。

0

看起來Google USB驅動程序已經更新以支持Glass開箱,所以只要您使用最新的驅動程序,您就應該可以通過ADB訪問Glass。在我的特殊情況下,我在2014年中期的某個時候將Glass連接到了我的機器上,但沒有采取任何措施。現在,當我試圖連接它時,儘管出現在設備管理器中,但我不會在ADB中看到它。大量的試驗和錯誤之後,我發現我不得不:

  1. 進入設備管理器
  2. 右擊下的「三星的Android手機」
  3. 單擊「卸載」的「Android ADB接口」。 BE SURE 「刪除此設備的驅動程序軟件」已選中。
  4. 斷開並重新連接Google Glass。

然後,我可以通過定期的Windows更新重新安裝驅動程序。這迫使它尋找最新的驅動程序。不知道爲什麼它沒有得到更新之前,但我希望這會幫助那裏的人仍然在這方面掙扎。

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文件。從選項中選擇您的設備。按安裝。

它完成:)