Статьи

Краткое руководство по Android ADB

На пути к изучению разработки под Android вы наверняка встретите инструмент командной строки, используемый для отладки, который называется ADB (Android Debug Bridge). Продолжайте читать, чтобы узнать больше о том, что вы можете сделать с помощью этого основного инструмента, общего для всех разработчиков Android.


Это руководство предназначено для разработчиков Java, только начинающих изучать Android, но он знаком с Eclipse и установил Android SDK и плагин Android Developer для Eclipse. Читатели также должны быть знакомы с командной строкой. Если вы еще не готовы, посмотрите предыдущие уроки этой серии .

Инструмент ADB запускается из командной строки.

В командной строке просто введите:

1
adb

Это запускает ADB и показывает список групп команд.

Если вы не видите список команд, вернитесь и проверьте параметры установки и пути к среде, как описано в предыдущих руководствах. Возможно, у вас установлена ​​программа ADB, но если у вас не настроена переменная среды PATH вашей оболочки, вам потребуется ввести полный путь к файлу ADB в терминале, чтобы запустить программу. Выполнено? Хорошо.

Итак, вернемся к этому списку команд. Инструмент ADB служит двум целям. Первый — позволить другим инструментам Android взаимодействовать с устройствами и эмуляторами. Второе — позволить вам, разработчику, общаться с устройствами и эмуляторами, выполняя различные команды вручную.

Команды АБР входят в две формы. Одна форма команды, которую вы запускаете прямо из АБР. Другая форма команды, которая не является напрямую ADB, но обычно выполняется через ADB, выполняется с помощью команды «adb shell».

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

1
adb devices

Вы должны увидеть что-то вроде этого:

Если нет, убедитесь, что ваш эмулятор работает, или перезапустите сервер ADB.

Чтобы перезапустить сервер ADB, вот еще одна команда для вас:

1
2
adb stop-server
adb start-server

Как только вы будете готовы, продолжайте. Мы рассмотрим много команд в произвольном порядке.


Здесь представлены различные команды, запускаемые напрямую через ADB. За этим последуют несколько команд, которые сначала требуют открытия оболочки.

Вы можете копировать файлы на подключенное устройство и с него, используя команды ADB push и ADB pull.

1
2
adb push <local source file path> <device destination file path>
adb pull <device source file path> <local destination file path>

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

Вы можете использовать ADB для установки или удаления приложений (apks) с ваших устройств. Используйте команду install для установки файла пакета Android /

1
adb install <file path to apk>

Кроме того, вы можете удалить существующее приложение по имени пакета.

1
adb uninstall <package name>

Вам может понадобиться удалить приложения, если вы перемещаетесь между компьютерами разработки, которые не используют один и тот же ключ подписи приложения. Это также быстрый способ очистки или загрузки устройства без использования Eclipse и плагина ADT.

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

1
2
adb backup
adb restore <archive name>

Смотрите ‘adb help’ для всех опций резервного копирования и восстановления. Это может быть полезно для сохранения данных приложения во время тестирования, а затем для легкого восстановления этих данных для повторного тестирования.

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

1
2
3
adb reboot
adb reboot recovery
adb reboot bootloader

По нашему опыту, они не подходят для эмулятора. Однако бывают случаи, когда устройства Android запутываются и требуют полной перезагрузки.

У инструмента ADB есть интерфейс оболочки. Чтобы выполнить команды оболочки, вы должны сначала запустить этот интерфейс, набрав adb shell:

1
adb shell

После запуска вы окажетесь в среде bash. Вы можете запустить команды bash, такие как df, чтобы показать свободное место на диске, время безотказной работы, чтобы увидеть, как долго работает устройство, или выйти, чтобы выйти из интерфейса оболочки:

Если вы не знакомы с Linux, вам может быть сложнее передвигаться в оболочке. В Интернете есть множество руководств, которые предоставят вам помощь для команд bash, таких как ls, cp, cd и так далее.


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

Вы можете использовать команду logcat для просмотра результатов журналирования так же, как в Eclipse:

1
2
3
adb shell
logcat —help
logcat -t 5

Есть много опций, доступных с помощью инструмента logcat. По умолчанию вывод поступает в режиме реального времени, так же, как при просмотре в Eclipse. Приятной особенностью является то, что вы можете отправить вывод в файл, используя опцию -f.

Инструмент bmgr — это менеджер резервного копирования. Вы можете использовать этот инструмент для запуска операций резервного копирования и восстановления данных на уровне приложений. Ваше приложение должно поддерживать резервные копии, чтобы это было полезно.

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

Инструмент обезьяны также может быть написан с помощью сценариев и поддерживает повторяющиеся потоки событий через ключ -s, поэтому тесты можно просматривать и повторять.

Вы можете запускать команды sqlite и взаимодействовать с базами данных приложений, используя оболочку adb. Вам потребуется доступ на чтение / запись к базам данных, которые вы хотите проверить или изменить (другими словами, ваши собственные приложения, а не другие).


Вы видели многое из того, что АБР может сделать для вас. От перебора файловой системы до перезапуска устройств и запуска команд sqlite вы ничего не можете сделать. Мы также гораздо больше, чем то, что мы рассмотрели, включая управление сетевыми подключениями, переадресацию портов, отладочные дампы и множество команд оболочки, чтобы занять вас. См. Официальную документацию АБР для исчерпывающего списка функций

Вы на пути к разработке Android. Какие приложения вы с нетерпением ждете? Дайте нам знать об этом в комментариях!

Разработчики мобильных приложений Лорен Дарси и Шейн Кондер являются соавторами нескольких книг по разработке Android: углубленная книга по программированию под названием « Разработка беспроводных приложений для Android» (в третьем выпуске в виде двухтомника), « Самс научи себя разработке приложений для Android за 24 часа» , и Изучение программирования приложений для Android для Kindle Fire: практическое руководство по созданию вашего первого приложения для Android . Когда они не пишут, они тратят свое время на разработку мобильного программного обеспечения в своей компании и оказание консультационных услуг. С ними можно связаться по электронной почте androidwirelessdev+mt@gmail.com , через их блог на androidbook.blogspot.com и в Twitter @androidwireless .

Купить разработку беспроводных приложений для Android, 3-е издание, том 1 Купить Sam's Teach Yourself для Android разработки приложений в течение 24 часов, 2-е издание Код Мамламбо в Код-Каньоне