Я ищу руководство или окончательный ответ на следующее. Я хочу использовать драйвер Google Android USB и изменить android_winusb.inf
для поддержки любого количества устройств Android. Я смог успешно добавить планшет HTC Evo, но когда я пытаюсь добавить LG (Optimus) или Samsung (Indulge, Admire), драйвер, похоже, прекрасно работает, но ADB его не видит.
Можете ли вы сделать драйвер Google Android для любого телефона Android? Если так... как?
Я пробовал много перестановок %SingleAdbInterface%
и %CompositeAdbInterface%
с вариациями идентификаторов Vendor и Product.
Вам нужно изменить 3 вещи, чтобы заставить драйвер Google USB работать на любом телефоне Android в любой Windows:
android_winusb.inf
файлadb_usb.ini
(больше не требуется)и вот подробности:
1. Добавьте идентификатор устройства в 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.
Как получить vid и pid: они находятся в драйверах, которые вы объединяете; но если у вас нет драйвера для устройства, вы можете получить его, открыв диспетчер устройств; затем щелкните правой кнопкой мыши устройство - выберите свойства - в новом диалоге перейдите на вкладку "Сведения" > в меню "Свойства" выберите "Идентификаторы оборудования". например, вы видите что-то вроде:
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 строки TWICE, один раз в раздел [Google.NTx86], а другой - в раздел [Google.NTamd64].
REPEAT для каждого устройства, которое вы хотите поддерживать
Теперь дополнительное редактирование для раздела [Строки]: edit
[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"
To:
[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 google был подписан google, изменение android_winusb.inf не позволит установить его в Windows 8, отображая сообщение об ошибке
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 или более ранняя версия не отображает это сообщение об ошибке. Вам необходимо восстановить файл каталога (возможно, с помощью SDK Windows) и подписать
Обходной путь: обходной путь для внутренней привязки - проверка подписи подписи в виде строки: либо временно, либо постоянно:
временно
Перейдите в верхний или нижний угол экрана слева, чтобы открыть панель прелести и нажмите кнопку настройки.
выберите "Изменить настройки ПК"
выберите "Общие"
Прокрутите вниз и нажмите "Перезагрузить сейчас" в разделе "Расширенный запуск".
Нажмите "Устранение неполадок. Нажмите "Дополнительные параметры". Нажмите "Параметры запуска Windows" Нажмите "Перезагрузить".
или
запустить cmd и введите:
shutdown -o -r -t 0
то после перезапуска выберите "Отключить принудительное подписание драйверов" из списка. установите драйвер перед перезагрузкой.
Постоянно:
нажмите Window + Q
найти cmd
щелкните правой кнопкой мыши cmd
выберите запуск в качестве администратора из панели действий
введите cmd:
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
3. Добавьте идентификатор поставщика устройства в белый список adb_usb.ini
(больше не требуется):
adb
используется для жесткого кодирования белого списка поддерживаемых идентификаторов поставщиков. Если вашего устройства не было в списке, то adb
полностью игнорировал его. Чтобы adb
распознавать такие устройства, пользователям приходилось вручную добавлять свои идентификаторы поставщиков в %USERPROFILE%\.android\adb_usb.ini
- по одному идентификатору в строке.
в командной строке:
echo 0x2207 >> "%USERPROFILE%\.android\adb_usb.ini"
К счастью, Google удалил фильтрацию VendorID в более поздних версиях adb
. Поэтому этот шаг больше не требуется.
Наконец, вы можете протестировать установку:
adb kill-server
adb start-server
adb devices
и включение отладки в настройках разработчика на устройстве Android
Это должно перезапустить сервер ADB и список устройств. Если драйвер работает нормально, устройство должно быть указано.
Можете ли вы дать нам лучшее описание и пример того, что вы делаете? Потому что все, что мне нужно сделать, это поместить туда строку для устройства, а затем сохранить файл. Теперь просто подключите устройство, и оно работает.
Обычно я использую нечто похожее на эту строку:
;
;some name for the phone (this seems to be arbitrary)
%CompositeAdbInterface% = USB_Install, THE_HARDWARE_ID
Что я делаю, это:
android_winusb.inf
.Your_Android_SDK_Directory/extras/google/usb_driver/
Кажется, что это всегда работает для меня, это то, что вы делаете? Или это даже помогает?
Найдите следующий файл
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
. Этот номер является частью идентификатора оборудования, который можно найти в разделе сведений об оборудовании устройства.
Шахта была:
USB\VID_2207&PID_0010&MI_01
(Я попытался выполнить android update adb
, но ничего не сделал.)
Ответ 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
Драйвер для Huawei не найден. Поэтому я использовал универсальный драйвер ADB:
ADBDriverInstaller
и запустите файл. Убедитесь, что вы подключили устройство через USB к компьютеру.Restart
.Перед этим прочитайте эту ссылку:
(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 been restarted, on the appearing screen press 7)
ADBDriverInstaller
. Выберите свое устройство из параметров. Нажмите "Установить".И это сделано:)
Похоже, что драйверы Google USB были обновлены для поддержки Glass из коробки, поэтому, пока вы используете новейшие драйверы, вы должны иметь доступ к Glass через ADB. В моей конкретной ситуации я подключил Glass к моей машине примерно в середине 2014 года, но ничего не сделал с ней. Теперь, когда я пытался подключиться к нему, я бы не заметил, что он появился в ADB, несмотря на то, что он появился в диспетчере устройств. После долгих проб и ошибок я узнал, что мне пришлось:
Затем я смог переустановить драйвер с помощью обычного обновления Windows. Это заставило его искать новейший драйвер. Не уверен, почему он не обновлялся раньше, но я надеюсь, что это поможет кому-то, кто еще не справляется с этим.
Для моего Azpen A727 драйвер Windows установлен правильно, поэтому необходим только шаг 3 ответа Мохаммада.
Я также установил универсальный драйвер adb из http://adbdriver.com/ и он работает.
вместо изменения файла adb_usb.ini я вносил изменения в файл android_winusb.inf в каталог android-sdk\extras\google\usb_driver\самостоятельно, и он работал для планшета 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