...

Программа adb это что

Как включить и пользоваться ADB?

ADB — Это Android Debug Bridge, что переводиться как «отладочный андроид мост». Служит он, как уже ясно из названия, для отладки андроида или отдельных приложений. С его помощью можно делать все действия, которые может делать пользователь и даже больше, однако для «больше» нужен ROOT доступ.

Чаще всего, ADB используется для прошивки или изменения каких то настроек, скрытых файлов и тд. Так-же можно просматривать логи прямо в реал-тайме (для этого есть спец. программы, которые куда удобнее командной строки), устанавливать программы, менять настройки и все в таком духе.

Я например использую подключение для тестирования своих андроид проектов. Нажимаешь кнопку «Build and run» и программа или игра собирается в пакет, отправляется на телефон и устанавливается, после чего еще и запускается. Удобно. Именно о таком способе использования и пойдет речь сегодня.

Как включить ADB?

Для того что-бы включить ADB на вашем устройстве на базе андроида, необходимо выполнить несложный ряд действий.

  • Зайти в настройки -> О телефоне
  • Нажимать на «Номер сборки», пока не появиться сообщение «вы стали разработчиком».
  • Выйти в меню настроек и найти новый пункт «Для разработчиков»
  • Включить пункт «отладка по USB»

По сути, это все, для включения ADB. Но для работы еще необходимы драйвера. Скачать универсальные можно тут . Эти драйвера подходят для большинства андроид телефонов, планшетов и других устройств на этой операционной системе. В 99% случаев у вас не будет с ними проблем. Однако производитель устройств часто выкладывают свои ADB драйвера на официальном сайте, часто, это просто копия универсальных драйверов, но бывают и исключения. Поэтому если ваше устройство не подключается с универсальными драйверами, попробуйте специальные от производителя.

Скачать ADB на компьютер

Конечно, для работы нужна сама программа ADB для пк. Точнее это архив с несколькими утилитами. Вот ссылка на официальную страницу от Google. ссылка. На странице есть ссылка на архив для windows, mac, linux. Жмем «Download SDK Platform-Tools for Windows» или другую платформу. Распаковываем архив в C:/adb для удобства.

Как пользоваться?

Пользоваться можно через командную строку или UI интерфейс. Через командную строку делается это так:

  • Пуск -> выполнить или WIN+R
  • Пишем команду «CMD«
  • Переходим в папку с ADB с помощью команды «CD C:/adb»

Далее пишем команды которые необходимы. Например, проверим, подключился ли телефон по мосту.

Пишем «adb devices». В консоли пробегут строчки о запуске сервера и выдастся список подключенных девайсов

c:\adb>adb devices List of devices attached * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached 1d886e2 device

Последняя строчка означает, что телефон подключен. Отлично!

Теперь можно вводить любые доступные команды, список которых можно посмотреть тут.

Консольки, это конечно хорошо, но давайте разберем конкретный пример.

Предположим, вы разрабатываете игру на Unity. Вам необходимо ее проверить на телефоне. Что для этого нужно? Просто подключите телефон к пк, а в Unity в окне Build выберете устройство из списка. Далее жмем кнопку «Build and run» и ждем. Готово.

Как использовать ADB по WIFI?

Да, да, вам не показалось, полный контроль можно получить и без проводов и да, это опасно. Однако, подключиться к телефону можно только если разрешить это делать.

  • Во-первых нужно в меню разработчика включить эту функцию (есть не на всех устройствах).
  • Во-вторых она выключается при перезагрузке.
  • И в-третьих при первом подключении с неизвестного устройства вылезет запрос на подтверждение, можно ли подключиться.

Однако, не все так просто. Что-бы все заработало, кабель все же понадобиться.

  1. Подключаем девайс по USB
  2. Открываем консоль и переходим в папку ADB, как уже делали выше.
  3. Убеждаемся что девайс и комп в одной Wi-Fi сети.
  4. Пишем adb tcpip 5555
  5. Пишем adb connect IP_ДЕВАЙСА. Адрес можно подсмотреть в настройках wifi вашей сети.

Обычно после этого достаточно выполнять только пункт 5. После этого ADB должен работать без проводов. Пользоваться им точно так же как и по проводу.

Что такое ADB и как с ним работать

Читая статьи о перепрошивке и рутинге Android-устройств, вы наверняка встречали упоминание консольной команды adb в тексте. Этот инструмент очень популярен среди энтузиастов ОС Android и применяется почти во всех графических и консольных утилитах для рутинга, снятия защиты и других действий. Однако, далеко не каждый пользователь знаком с этим инструментом и не знает его полезнейших возможностей, таких как установка и удаление приложений, синхронизация папок между настольной машиной и смартфоном, снятие скриншотов, открытие доступа в интерет через смартфон и многих других.

Что такое ADB

ADB это протокол или, проще говоря, система связи между настольной машиной и смартфоном по USB-кабелю, которая изначально была разработана сотрудниками Google для отладки и выполнения сервисных задач над смартфоном. Другими словами это инструмент для разработчиков, который тем не менее имеет множество функций, которые могут быть полезны и обычному пользователю.

ADB состоит из двух компонентов: сервера, который работает на смартфоне, и клиентской программы, которую пользователь запускает на большом брате. Сам клиент представляет собой небольшую консольную команду, которую следует запускать либо в окне DOS в Windows, либо в эмуляторе терминала в Linux. Вся работа с ADB сводится примерно к следующему: с помощью клиента пользователь отдает команду, а смартфон ее выполняет.

Как пользоваться ADB

Перед тем как начать использовать ADB следует обзавестись клиентом. По умолчанию он распространяется в составе Android SDK, однако если вы не хотите устанавливать SDK, клиент можно получить и отдельно. Архив с клиентами для Windows, Mac и Linux можно получить, например, здесь. Просто распакуйте этот архив на диск C: в Windows или в домашний каталог в Linux. Если вы работаете в Windows не забудьте установить все необходимые драйверы (обычно они устанавливаются автоматически при первом подключении смартфона/планшета с помощью USB-кабеля).

Теперь подключите устройство к USB и включите на нем режим отладки (Настройки — Для разработчиков — Отладка по USB). Откройте консоль (Пуск — Выполнить — сmd — Enter в Windows), перейдите и наберите следующие команды для проверки успешности соединения ADB-клиента с сервером:

cd c:\adb_fastboot adb-windows.exe devices 

Если все в порядке на экран должно быть выведено что-то вроде таких строк:

List of devices attached 0146A0D016016010 device 

Сразу рекомендую переименовать файл adb-windows.exe в adb.exe для удобства (в дальнейшем я буду использовать именно такой вариант названия, тем более что в SDK он такой).

Установка и удаление приложений

С помощью ADB достаточно удобно устанавливать и удалять приложения со смартфона/планшета. Для этого предусмотрены команды “adb install” и “adb uninstall”. Так, например, чтобы установить пакет на смартфон, выполните такую команду в той же консоли:

adb install c:/пакет.apk 

Чтобы установить приложение на карту памяти добавьте ключ -s:

adb install -s c:/пакет.apk 

Для удаления приложения используйте такую команду:

adb uninstall com.drweb 

Обратите внимание, что следует использовать системное имя приложения, которое можно узнать просмотрев информацию о нужном приложении на смартфоне, либо получить список всех установленных приложений выполнив такую команду:

adb shell ls /data/app 

И уже из него выбрать необходимое.

Копирование файлов и синхронизация каталогов

Кроме установки и удаления пакетов вы также можете перемещать файлы и целые каталоги между компьютером и картой памяти устройства. Так, например, чтобы переместить папку c:/music на карту памяти достаточно выполнить такую команду:

adb push c:/music /sdcard 

А чтобы получить папку с фотографиями с карты памяти — такую:

adb pull /sdcard/DCIM/Camera c:/ 

Однако, самое полезное применение ADB это синхронизация папок между компьютером и смартфоном. Допустим у вас есть папка c:/music, в которую вы постоянно добавляете новую музыку и хотели бы чтобы добавленная недавно музыка перекочевала на смартфон без необходимости копирования всей музыки, половина которой уже есть на смартфоне. Нет ничего проще, воспользуйтесь синхронизацией:

adb sync c:/music /sdcard/Music

Выход в интернет через смартфон

Еще одна очень интересная функция ADB это возможность проброса сетевых портов или, говоря на человеческом языке, возможность сделать так, чтобы выход в интернет происходил через смартфон. Да, для этого есть функция WiFi hotspot и различные приложения вроде PDANet, однако метод с использованием ADB поможет в случае экстренной ситуации, когда под рукой кроме смартфона и ADB нет ничего.

Чтобы воспользоваться этой функцией запустите ADB в режиме проброса портов:

adb forward tcp:8080 tcp:8080 

Затем установите на смартфон и запустите приложение Proxoid и настройте браузер настольной машины на использование прокси по адресу “localhost:8080”.

Это все. Теперь выход в интернет будет происходить через смартфон. Сразу оговорюсь, что HTTPS-сайты работать не будут, поэтому получить доступ, например, к Gmail не получиться.

Бэкап и восстановление приложений и настроек

Современные версии ADB кроме всего перечисленного поддерживают также функцию бэкапа и восстановления установленных приложений и их настроек, что может пригодится при обнолвении прошивки или при экспериментах. Воспользоваться функцией очень просто. Чтобы сделать бэкап всех приложений и настроек достаточно выполнить следующую команду:

adb backup -f c:\\backup -apk -all 

Все настройки и приложения будут сохранены в файл c:\backup. Для его восстановления достаточно выполнить такую команду:

adb restore c:\\backup 

Другие функции

Что еще можно сделать с помощью ADB? Например, получить доступ к консоли Android:

adb shell 

Имеет смысл использовать только в том случае, если вы знаете что это такое.

С помощью ADB также можно принудительно перезагрузить устройство:

adb reboot 

Чтобы перезагрузиться в консоль восстановления используйте такую команду:

adb reboot recovery 

ADB по сети

Сервер ADB может работать и в сетевом режиме, когда вместо USB-кабеля для доступа к устройству используется локальная WiFi-сеть. В целях безопасности в стандартных прошивках сетевой режим отключен, но в таких прошивках как CyanogenMod, AOKP и других его можно активировать через настройки. А если получить root то и в любой прошивке с помощью бесплатного приложения WiFi ADB. Просто установите его, нажмите кнопку “Turn On” и наберите в консоли Windows строку, которая появится на экране, например:

adb connect 192.168.0.101:5555 

Далее можно использовать все стандартные команды ADB

Выводы

ADB очень мощный инструмент, а если в придачу к нему вы изучите консоль Android, то сможете делать со своим смартфоном все, что угодно. Кстати, чтобы не вбивать все указанные в статье команды в консоли, можно создать несколько скриптов (текстовых файлов с расширением .bat) и добавить в них нужные команды. Тогда для запуска команд придется просто кликнуть по скрипту.

Back to the root

Прикладное adb (Android Debug Bridge) для зумеров

Это обзорная статья для таких же, как и я, которые начали программировать уже в тот момент, когда весь функционал командной строки обрел кнопочки в интерфейсе.

В этой инструкции хочу рассказать о командах adb , которые использовать легче, чем делать то же самое через UI Android Studio или настройки Android.

Основная задача — показать возможности adb , которые избавят от рутинных шагов при разработке/отладке. Например, позволят быстро переключать светлую тему на темную.

Рассмотрим те команды, которые действительно пригождаются хотя бы раз в пару дней. Для остального есть документация.

Денис Долгополов

Что такое ADB

adb (Android Debug Bridge) — это программа для управления андроидом через командную строку.

https://developer.android.com/tools/adb — тут есть более правильное определение + объяснение, почему adb называют клиент-серверным приложением.

Сменить тему (светлая/темная)

// перейти на темную тему adb shell cmd uimode night yes // перейти на светлую тему adb shell cmd uimode night no

Принудительная остановка приложения

 adb shell am force-stop ru.test.app

Удалить кэш и данные приложения

adb shell pm clear

Включить/выключить Wi-Fi

adb shell svc wifi enable adb shell svc wifi disable

Удалить файл

Без root-прав некоторые директории будут недоступны через adb

adb shell rm "/records/albums/music.mp3"

Отправить Intent

Пригождается, когда нужно сэмулировать Intent от системы:

adb shell am broadcast -a android.media.tv.action.INITIALIZE_PROGRAMS -n ru.app.test/ru.app.test.featureName.TestBroadcastReceiver
adb shell am start -a android.intent.action.VIEW -d "mydeeplink"

Или запустить Activity:

adb shell am start -n ru.test.app/.feature.main.MyActivity

Установить proxy ip

Если вы пользуетесь Charles/Proxyman или другой программой для работы с трафиком, то можете быстро установить proxy ip командой:

adb shell settings put global http_proxy 192.168.1.12:8888

Сбросить proxy ip:

adb shell settings put global http_proxy :0

Изменить плотность экрана

Удобно для тестирования UI на разных разрешениях:

adb shell wm density 160 например adb shell wm density 160

Узнать, какая изначальная плотность экрана:

adb shell wm density // Physical density: 440 // Override density: 160

Установить apk

 adb install -d -r -g "C://downloads/. /test.apk"

аргументы (лишние убрать):

  • -r — сохранить данные приложения (например, информацию в shared preferences)
  • -g — выдать все разрешение, запрашиваемые в манифесте
  • -d — отключает проверку версии приложения (по умолчанию версия устанавливаемого приложения должна быть равна или больше версии установленного)

Подключение по Wi-Fi

Необходимо, чтобы компьютер и телефон находились в одной сети. На Android нужно включить «Отладку по Wi-Fi» в настройках разработчика.

adb connect ip:port например: adb connect 192.168.1.12 или adb connect 192.168.1.12:5555

Список подключенных устройств и их ip

adb devices

Выбор определенного устройства

Если вы работаете с несколькими устройствами, то чтобы отправить любую команду на определенное устройство (а не получать ошибку List of devices attached ), можно передать аргумент -s ip

adb -s 192.168.1.12 uninstall ru.test.app

Заключение

Когда определите для себя топ удобных команд, можно сделать для них alias (псевдонимы для длинных команд). Тогда использование adb станет действительно удобнее, чем GUI .

  • android
  • android development
  • adb
  • android debug bridge
  • android studio
  • андроид
  • разработка приложений
  • разработка
  • разработка под android
  • мобильная разработка

При подготовке материала использовались источники:
https://you-hands.ru/2019/11/08/kak-vklyuchit-i-polzovatsya-adb/
https://zobnin.github.io/tools/adb/2016/01/10/adb.html
https://habr.com/ru/articles/751092/

Оцените статью