Ручная установка драйвера ADB
Я хочу поделиться с вами простым способом установки ADB драйвера под Windows. Эта статья понадобится тем, у кого этот драйвер или не устанавливается вовсе, или устанавливается, но adb все равно в упор не видит устройство(как было у меня), или вы вообще этот драйвер не нашли. Так что всех, у кого есть/были похожие проблемы, или кому просто интересно, прошу под кат.
Начну с предыстории. Решил я купить себе недорогой планшетик на Android для чтения книг(DJVU/PDF), и выбор пал на устройство российского конечно же китайского производства TeXet TM-7025. Жаба давила покупать что-то дорогое, а для простого чтения книг каких-то сверх-характеристик не требуется. Позже я обнаружил что на нем неплохо идут большинство игрушек, удобно полазить в инете пока ты сидишь in da kabin и т. д. А поскольку передо мной маячило изучение Android, я решил, что будет весьма удобно пользоваться для этого железным девайсом вместо мучений с эмуляторами.
И вот тут меня ждал неприятный сюрприз — то ли родной драйвер оказался кривым, то ли винда, то ли провод… вообщем драйвер то встал, диспетчер устройств Windows рапортовал о полной работоспособности девайса, но на запрос adb devices в консоли я получал пустой список и, естественно, тестировать приложение на планшете не удавалось.
Я написал запрос в службу поддержки TeXeT, мне даже ответили ссылкой на сам драйвер, который, как я уже убедился, не работал. Я начал искать ответ в интернете и нашел кучу разных сборок этого драйвера и мануалов, но все равно ни один из них не завелся как надо, и даже родной драйвер из SDK вообще никак не становился, что повергло меня в уныние… но не отчаяние.
Вот тут я решил попробовать свои силы в написании драйверов старом добром методе научного тыка и открыл inf-файл драйвера. Надежду мне давало понимание, что софтверная часть adb интерфейса со стороны планшета должна быть идентичной для всех устройств, а USB и так работал. И вот, после нескольких неудачных проб ручной правки inf-файла я нашел рецепт лечения приправы inf-файла так, чтобы оно поставилось и, главное, работало.
Шаг 1. Скачать драйвер. Если вы этого еще не сделали, откройте Android SDK Manager, найдите раздел Extras, поставьте галочку напротив Google USB Driver и нажмите Install Packages. Все просто. Ждете, пока загрузится.
Шаг 2. Найдите драйвер и сделайте его копию в отдельную папку. Зайдите в папку %android-sdk%\extras\google\ и увидите там заветную папочку usb_driver. Вот ее скопируйте куда-то, и там же будем проводить дальнейшие манипуляции. В принципе, можете править и «оригинал», но я предпочел сохранить оригинал нетронутым на всякий пожарный.
Шаг 3. Правим inf-файл. В папочке открываем файл android_winusb.inf и ищем там строки такого вот вида:
Делаем копию этих строк, заменяем Google Nexus One на %имя_вашего_девайса% для идентификации в будущем и… открываем диспетчер устройств Windows. Ищем там наше устройство(Android, Android Composite ADB Interface или что-то в этом стиле). Открываем свойства устройства, вкладка «Сведения», в списке выбираем пункт «ИД оборудования» и видим такую вот картину.
Копируем строчку, которая больше всего похожа на ту, что показана на рисунке(Она, по идее просто немного короче), и вставляем ее в наш inf-файл.
В %SingleAdbInterface% мы конец строки удаляем, как видно, в %CompositeAdbInterface% вставляем целиком. Повторять два раза все, наверное, не надо, но у меня уже все стоит и мне лень экспериментировать 🙂
Сохраняемся(будьте внимательны — в некоторых случаях для этого нужно запускать блокнот с правами администратора, т. к. в пользовательском режиме вам не дадут перезаписать inf-файл).
Шаг 4. Установка драйвера. Теперь, когда все подготовлено, возвращаемся в диспетчер устройств и удаляем все ранее установленные adb драйверы(если были). Обновляем список устройств и видим наш девайс без драйверов. Открываем его свойства и выбираем «обновить драйверы», выбираем установку из папки, указываем папку с поправленым inf-ом и запускаем установку — наш драйвер моментально находится, но при установке он может ругаться о несовместимости с вопросом «продолжать ли, насяльнека?». Продолжаем. Все, драйвер установлен.
Шаг 5. Финал. Для точности делаем вынь-всунь USB-порта, ждем пока все обнаруживается, открываем консоль(Win+R, вводим cmd) и пишем adb devices. Если все прошло хорошо — видим заветный пункт списка, обозначающий, что adb теперь видит наш девайс.
С этого момента можно спокойно запускать eclipse и строить программы, наслаждаясь удобной автоматической сборкой, установкой и возможностью дебага прямо на нашем устройстве.
Если команда adb у вас вообще не работает. Компьютер -> Свойства -> Переменные среды. Ищем переменную Path и в конце дописываем(ни в коем случае не перезаписываем) в конце точку с запятой, а после адрес папки, где живет adb(обычно %android-sdk%\platform-tools\). После перезагрузки должно заработать.
Иногда adb не запускается автоматически при старте системы. Запустите вручную.
Что это было?
На самом деле все просто. В силу неких причин(винда мастдай/у прогеров кривые руки/гугловский инф-файл писался только для родных гугловских девайсов/в вашем компьютере все испортили бозоны Хиггса) винда не хочет кушать гугловский драйвер для негугловских девайсов, не записанніх в inf-файл. Видимо, там все как раз завязано на этих ИД-оборудования. Но ведь софтверная часть на подавляющем большинстве андроид-устройств в части дебаггер-коннектора к ПК идентична, потому драйвер должен нормально общаться с любым Андроид-устройством. Наша задача — обмануть Windows и заставить ее принять девайс за «драйверо-подходящий», что мы и сделали путем дописывания его ИД в inf-файл драйвера.
Надеюсь, кому-то данный мануал поможет завести свой китайский или другой девайс, для которого при сборке системы забыли сделать нормальный драйвер adb, или тем, кого задалбывает качать официальный драйвер от производителя устройства(это бывает настолько гемморно, что быстрей сделать все вышеописанное — у меня так было с драйвером для телефона LG E510).
P. S. Я не проводил массового тестирования данного метода, так что не могу гарантировать, что он заработает в 100% во всех случаях. Но у меня он заработал на Windows 7, а после и на Windows 8. Файл приходилось править для каждого раза отдельно, но не думаю, что это такая уж проблема.
Источник
Download Android USB Drivers for popular OEMs
So you’ve got an Android device and want to dive deep into the world of modding? Be it rooting or installing a custom ROM like LineageOS, most of the aftermarket modding requires you to connect your Android smartphone to a computer using a USB cable so you can use tools like the Android Debug Bridge (ADB) and Fastboot to interact with the device. For an Android power user, you may also want to reinstall the factory firmware on your phone, which means you have to deal with the OEM-specific flashing utilities.
However, none of these tinkering jobs are possible if your PC can’t see the target device in the first place. As in the case of Windows, the operating system may require an additional piece of software known as the “driver” in order to properly recognize all the different connection modes exposed by the Android device. Below you can find a list of official OEM-provided Android USB driver packages and a generic driver installation guide. If you don’t see the maker of your device listed or you see a misplaced link, send a message to Skanda HazarikaВ (SkandaHВ on the forums) with the device details.
Table of Contents:
Purpose of Android USB drivers
The USB interface of an Android device is a pretty complex object. Depending on the configuration, it may expose the standard Android USB debugging interface, the fastboot interface, and various other SoC-specific diagnostic interfaces to the computer. Simultaneously maintaining more than one interface is supported as well, e.g. you can interact with your device with ADB while configuring the internal modem parameters.
Keep in mind the aforementioned scenarios are a bit different from connecting the device through the plain old Media Transfer Protocol (MTP) or Picture Transfer Protocol (PTP) mode. MTP enables the end-user to browse the internal memory on the device from a PC as if it’s an external storage drive. Microsoft ships a generic MTP/PTP driver with every edition of Windows since Windows XP, so you don’t need an external driver for that.
Download Android USB drivers for popular OEMs
Most Android OEMs offer official driver packages for their devices. Besides the ADB and Fastboot interfaces, these drivers also support proprietary flashing protocols designed by the corresponding device maker. For example, if you want to flash a Samsung Galaxy device, you must install the Samsung USB driver package beforehand.
Note that Microsoft has been shipping a generic ADB driver with Windows for a while, so installing the OEM driver just for the sake of USB debugging might not sound worthwhile anymore. Windows can also check and install the missing drivers on the fly through Windows Update. However, Microsoft-recommended drivers are not always the best choice for complex USB interfaces, so do check out the official driver pack whenever possible.
The inbox Android USB debugging driver of Windows in action
Get the appropriate driver for your device from the index below:
OEM | Android USB Driver |
---|---|
Acer | Download Link |
Alcatel | Download Link |
ASUS | Download Link |
Blackberry | Download Link |
Dell | Download Link |
Fujitsu | Download Link |
Download Link | |
HTC | Download Link |
Huawei | Download Link |
Intel | Download Link |
Kyocera | Download Link |
Lenovo |
|
LG | Download Link |
Motorola | Download Link |
MediaTek | Download Link |
NVIDIA | Download Link |
Samsung | Download Link |
Sharp | Download Link |
Sony | Download Link |
Toshiba | Download Link |
Vivo/iQOO | Download Link |
Xiaomi | Download Link |
ZTE | Download Link |
How to install Android USB drivers
Now that you’ve downloaded the suitable driver package for your device, it’s time for you to install it. Some OEMs offer standard installer executables, which means you can easily install the whole driver suite by double-clicking on the setup file and following the wizard.
However, Google and a few other vendors prefer to stick with the bare INF and associated binary files which are packed inside a zip or rar archive. Such packages need to be installed using Device Manager, but you have to extract the contents of the archive beforehand.
- Right-click on the Start button and select the Device Manager entry. You can also call the Microsoft Management Console snap-in named devmgmt.msc directly from Run to open Device Manager.
Device Manager under Windows 10
- Connect the Android device to your PC. Depending on the selected configuration, you may see one or more unknown devices popping up.
- (Optional) Right-click on the unknown device entry, select Properties, move to the Details tab, and finally select Hardware Ids from the dropdown menu. Now open your favorite search engine, paste the hardware identifier in the search box, and go through the search results. This is a crude way to determine the probable interface your device is currently exposing.
- Right-click on the unknown device entry and select Update drivers. Now select Browse my computer for drivers/driver software and point the wizard to the folder where you extracted the driver package.
- If everything goes right, you should see a confirmation page like the following.
Manually install the driver for an unsupported device
On some occasions, the OEM drivers aren’t enough. Perhaps you’ve stumbled upon a no-name generic tablet, or the flash mode interface of your shiny new phone has yet to get an official driver from its maker. In that case, you can forcibly install an existing driver package for a similar USB interface through Device Manager.
- Open Device Manager and locate the unknown device entry.
- Right-click on it and select Update drivers. Select Browse my computer for driver software and then choose the option named Let me pick from a list of available drivers on my computer.
- Now select Show All Devices and click Next. On the next screen, click on the Have Disk… button.
- At this point, you need to browse to the location where the extracted driver for a similar device is located. Pick the INF file from the list of files and select Open.
- Now carefully choose the driver model. For example, if you’re trying to install the Fastboot mode driver for a device, select the Android Bootloader Interface from Google’s driver set. Windows might show a warning related to compatibility, but you can ignore it and continue the installation process anyway.
This method lets you force-install a signed driver without breaking its digital signature, so you don’t need to turn off driver signature enforcement on a 64-bit Windows instance.
You’ve now got the correct USB driver installed on your computer and your Android device is ready to receive instructions. Now it’s time to put it all together and run your first ADB command!
Источник