- ADB (Android Debug Bridge)
- Shell
- Список доступных команд (часть)
- Logcat
- Backup Manager
- Monkey Stress Tester — Обезьяна с гранатой
- Запись видео с экрана
- Соединение через Wi-Fi
- ADB для чайников. Часть 1.
- Читаем LOGCAT через ADB
- Отчет об ошибках (BUGREPORT)
- ADB совместно с ROOT правами доступа
- Установка приложений через ADB
- Работа с Android-устройством по ADB(Android Debug Bridge) и в режиме FastBoot
ADB (Android Debug Bridge)
Клиент-серверное приложение, которое предоставляет доступ к работающему эмулятору или устройству. С его помощью можно копировать файлы, устанавливать скомпилированные программные пакеты и запускать консольные команды. Используя консоль, вы можете изменять настройки журнала и взаимодействовать с базами данных SQLite, которые хранятся на устройстве. В старых версиях SDK программа находилась в папке tools, теперь находится в папке platform-tools.
Состоит из трёх компонентов: фоновой службы (демона), работающей в эмуляторе, сервиса, запущенного на компьютере разработчика, и клиентской программы (наподобие DDMS), которая связывается со службой через Сервис.
Что бы увидеть весь список параметров и команд, которые можно запустить при помощи adb, введите в командной строке следующее (или в окне студии Terminal):
Если у вас есть файл приложения APK и вы хотите его установить на эмуляторе, то используйте команду:
d:\program.apk — это путь к файлу, который хотите установить в эмулятор. После этого установленное приложение появится в эмуляторе. Если приложение слишком большое (несколько мегабайт), то придётся немного подождать, пока установится. Во время установки в консоли курсор будет мигать, а потом появится надпись Success, что означает успешную установку программы.
Также можно удалить ненужную программу по имени его пакета:
Чтобы получить список запущенных эмуляторов и их серийные номера, используйте команду:
Вы увидите приблизительно такую картину:
Зная имя устройства, вы можете запустить на нужном устройстве требуемую команду:
Перезагрузить устройство. Если устройств несколько, то нужно указать нужное устройство.
Чтобы перезапустить сервер:
Сделать бэкап и восстановить из бэкапа можно так:
Для копирования файлов с устройства на компьютер и обратно используются команды pull и push.
Shell
Чтобы запустить оболочку (shell) на подключённом устройстве, выполните следующую команду:
С ним часто используют команды am и pm. Это не время, а сокращение от Application manager и Package Manager. Например, можно запустить сервис через намерение:
Для просмотра всех установленных приложений (пакетов):
Предоставить разрешение приложению/запретить.
Узнать информацию о конкретном приложении.
Получить список доступных системных свойств.
Если вы знаете свойство, то можно запросить его значение напрямую.
Получить список всех будильников.
Информация о всех видимых активностях.
Символ # обозначает приглашение оболочки (shell prompt).
Вы можете просмотреть список команд, доступных при работе в оболочке, введя следующую информацию по приглашению оболочки:
Список доступных команд (часть)
Чтобы просмотреть список каталогов и файлов, находящихся на корневом уровне (root-level), введите в командной строке оболочки следующую команду:
Для просмотра списка баз данных используйте команду:
В этом каталоге содержится список пакетов, установленных на устройстве. Для примера исследуем пакет com.android.providers.contacts:
Эта команда отобразит файл contacts.db и др., представляющие собой базу данных SQLite.
Logcat
Backup Manager
Monkey Stress Tester — Обезьяна с гранатой
Monkey ([android-sdk-path]**/platform-tools) — утилита для генерации случайных жестов на эмуляторе или устройстве, что напоминает движения глупой мартышки.
Для просмотра всех файлов базы данных *.db используйте команду:
Вы увидите, что в Android имеются следующие базы данных (зависимости от версии Android набор может варьироваться):
alarms.db
contacts.db
downloads.db
internal.db
settings.db
mmssms.db
telephony.db
Можно активировать команду sqlitе3 для одной из перечисленных баз данных, введя следующую информацию:
Для завершения работы с sqlite3 напишите:
Обратите внимание: приглашение для adb — это #, а приглашение для sqlitе3 — это sqlite>.
Запись видео с экрана
Вы можете записать видео с экрана вашего устройства (на эмуляторе не работает):
Затем можно сбросить на компьютер.
где /sdcard/my_app.mp4 – путь к файлу с видео (sdcard) и его имя (my_app.mp4).
Максимальное время записи равно трём минутам. Можно прервать запись (Ctrl+C).
Также вы можете управлять качеством записи, разрешением и другими параметрами с помощью следующих команд:
—size Задает разрешение, например: 1280×720. По умолчанию этот параметр установлен в соответствии с разрешением главного экрана устройства (если поддерживается), или 1280×720 – если нет.
—bit-rate Задает скорость потока видео (мегабиты в секунду). По умолчанию – 4 Мб/сек. Например, для записи со скоростью 6 Мб/сек, вам нужно будет ввести следующую команду:
—time-limit Задает максимальную длительность видео в секундах. По умолчанию установлено максимальное значение – 180 сек (3 минуты).
—rotate Поворот видео на 90 градусов. Экспериментальная опция.
—verbose Отображать информацию о процессе записи в окне командной строки.
В Android Studio вы можете начать запись через кнопку записи в панели Android DDMS (Alt-6).
Если вы хотите, чтобы на видео отображались «отпечатки» касаний к экрану, включите в настройках устройства в разделе для разработчиков опцию «Показывать нажатия» или «отображать касания».
Соединение через Wi-Fi
Обычно для тестирования программы на реальном устройстве использует USB-соединение. Предположим, кот уволок куда-то USB-кабель или расшатал USB-порт (ага, валите всё котов). В этом случае можно попробовать использовать Wi-Fi. Описанный ниже способ не гарантирует работоспособность на всех устройствах. Пробуйте.
Сначала соединитесь обычным способом через USB (не знаю, как вы собираетесь это сделать, если у вас утащили кабель и сломали порт). Включите Wi-Fi на компьютере и на устройстве.
Убедитесь, что устройство присоединено.
Ответ (у вас будет свой набор символов):
Меняем режим работы с USB на TCP/IP:
Теперь вам надо узнать IP-адрес вашего устройства. Пример для Nexus 7: Запускаем Настройки | О планшете | Общая информация | IP-адрес. Перепишите адрес на бумажку. Запускаем команду с этим адресом (у вас будет свой адрес).
Теперь можете отсоединить кабель. Отдайте его коту, пусть играет.
Проверяем, что устройство по прежнему на связи.
Отлично! Запускайте приложение и оно по воздуху установится на устройстве.
Учтите, что передача данных будет идти медленнее и для больших приложений будет не слишком удобно использовать данный способ. Хотя я особых тормозов не заметил для учебных примеров.
Если вам надо вернуться к старому способу, то вызываем команду:
Указанный способ очень удобен. Недаром на баше есть такие строчки:
Слава Wi-Fi! Котэ не может его перегрызть.
А вот другому повезло меньше и на баше описана его ситуация:
Звонок в техподдержку одного интернет-провайдера.
ТП(техподдержка): Добрый день! Я вас слушаю.
А (абонент): У меня тут проблема возникла.
ТП: Какая у вас проблема?
А: Я гонял кота шашкой и перерубил кабель.
Если бы абонент позаботился о настройке через Wi-Fi, то и проблемы бы не было.
Источник
ADB для чайников. Часть 1.
Многие из нас уже знакомы с ADB (Android Debug Bridge), поскольку, будучи владельцем Android устройства, довольно часто приходится выполнять такие простые действия, как adb push и pull, или adb reboot и т.д. Но для многих начинающих пользователей один только вид командной строки уже пугает, и кажется запредельно возможным. Хотя на самом деле всё довольно просто, опытные пользователи не дадут мне соврать, а самая большая сложность заключается в том, чтобы запомнить все эти команды, хотя это тоже не обязательно делать, поскольку Интернет всегда под рукой и найти нужную команду не составляет труда.
Android Debug Bridge, который является частью эмулятора Android SDK, позволяет осуществлять связь между Вашим компьютером и подключенным к нему Android устройством, кстати если нужен какой то софт, то программы на ноутбук скачать бесплатно можно здесь. Что я могу делать с помощью ADB? Возможности у него довольно широкие, например, самые популярные действия: копировать файлы с Android устройства на компьютер, заливать файлы с компьютера на Android, выполнять множество Linux команд, получать отчеты об ошибках и т.д.
Поэтому, если Вы новичок в этом деле и хотите узнать немного больше об ADB, чем просто что это такое, тогда предлагаю Вам ознакомится с моим небольшим базовым пособием по изучению ADB.
Что понадобится
1. Android Debug Bridge (ADB) для Windows 32bit – скачать
2. Android Debug Bridge (ADB) для Windows 64bit – скачать
3. Компьютер с установленной Windows ОС.
Теперь переходим к активной фазе:
1. Скачиваем нужный zip архив и извлекаем его куда Вам будет угодно, например, диск С.
2. Теперь переходим в директорию C:/adb/sdk/platform-tools. Здесь вы найдете набор файлов, как показано на картинке ниже.
3. Зажимаем кнопку Shift + правый клик мышью и запускаем командную строку Windows с текущей директории.
4. Вводим команду adb start-server.
5. Чтобы убедится, что Ваше устройство правильно подключено и было распознано компьютером, введите команду: adb devices. Если всё хорошо, вы увидите что то похоже на это:
Теперь, когда Ваше устройство подключено и всё работает, давайте немного с ним поиграем.
Читаем LOGCAT через ADB
Самый простой способ, это выполнить команду: adb logcat. Как результат, на экране появится всё содержимое лог файла устройства. Чтобы получить logcat в отдельном файле выполните: adb logcat > logcat.txt.
Отчет об ошибках (BUGREPORT)
Можно выполнить команду: adb bugreport, но вы получите уведомление, что сформировавшийся отчет невозможно будет прочитать, поэтому лучше воспользоваться: adb bugreport >result.txt.
ADB совместно с ROOT правами доступа
Для работы из-под ADB с полными правами доступа, нужно рутить девайс. Если девайс уже рученый, тогда выполняем команду: adb root и видим то, что показано на картинке ниже (перезагрузка ADB с root правами).
Установка приложений через ADB
Чтобы установить приложение, убедитесь, чтобы в названии apk файла не было пробелов и надо точно знать правильный путь к нему. Ну а дальше выполняем команду: adb install + название файла инсталяции. В своем примере я установил игру papertoss, поэтому если всё пройдет успешно, вы получите на экране такую картинку:
Источник
Работа с Android-устройством по ADB(Android Debug Bridge) и в режиме FastBoot
Работа с Android-устройством по ADB(Android Debug Bridge) и в режиме FastBoot
ADB (Android Debug Bridge — Отладочный мост Android) — консольное приложение для PC, с помощью которого производится отладка Android устройств. Работает по принципу клиент-сервер.
Поставляется «adb.exe» в составе инструментария разработчика Android (Android SDK), который, в свою очередь входит в состав «Android Studio«. Для того, чтобы не устанавливать громоздкий SDK в нижеприведенной инструкции предлагается минимальный комплект ( спасибо уважаемому @psihop ) для работы с устройством по ADB.
При первом запуске «adb.exe» с любой командой создается сервер в виде системной службы (демона), которая будет прослушивать все команды, посылаемые на порт 5037.
Основные возможности:
- Вывод списка подключенных к ПК устройств, работающих по протоколу ADB.
- Просмотр логов работы Android ОС.
- Копирование файлов с/на аппарат.
- Установка/удаление приложений.
- Создание и восстановление пользовательских данных.
- Выполнение unix-команд на устройстве. Запуск скриптов.
- Прошивка устройства.
- Управление сетевыми параметрами.
- .
Установка и настройка ADB на ПК:
- Скачать и установить как обычную программу драйверы: Android_adb-USB_UnifL_Driver_v1.02.zip (Более новая версия может быть в отдельной теме )
- Скачать комплект для работы с устройством: ADB.rar
- Распаковать архив в произвольную папку с латинским названием. Например: «c:\adb\«. Полный путь до файлов комплекта НЕ должен содержать пробелов, спецсимволов, русских букв и т.п. В данном примере в папке «c:\adb\» должны быть 5 файлов:
- «adb.exe» — непосредственно сам ADB, с которым будем работать.
- «AdbWinApi.dll» — библиотека для работы ADB.
- «AdbWinUsbApi.dll» — библиотека для работы ADB.
- «fastboot.exe» — управление устройством переведенным в режим fastboot.
- «START.exe» — программа для облегченного запуска ADB.
Установка и настройка ADB на аппарате:
Список команд ADB (Полный список команд можно получить, изучив исходники ):
- Отправка команды только на устройство подключенное через USB. Внимание: Выдаст ошибку, если подключено больше одного устройства.
adb -d - Отправка команды на устройство в эмуляторе. Внимание: Выдаст ошибку, если подключено больше одного эмулятора.
adb -e - Отправка команды на устройство с указанным серийным номером.
adb -s - Отправка команды на устройство с указанным именем. Если ключ -p не указан, используется значение переменной ANDROID_PRODUCT_OUT.
adb -p - Список всех подсоединенных устройств.
adb devices - Подключится к устройству Android по протоколу TCP/IP через порт 5555 (по умолчанию, если не задан).
adb connect [: ] - Отключится от устройства Android подключенного через TCP/IP порт 5555 (по умолчанию, если не задан). Если не задан ни один параметр, отключиться от всех активных соединений.
adb disconnect [ [: ]] - Копировать файл/папку ПК->Android-устройство.
adb push - Копировать файл/папку Android-устройство->ПК.
adb pull [ ] - Копировать PC->Android-устройство только новые файлы. Ключи: Не копировать, только создать список -l.
adb sync [ ] - Запуск упрощенного unix shell. Примеры приведены в следующем спойлере.
adb shell - Отправить команду в консоль эмулятора.
adb emu - Отправить приложение на устройство и установить его.
adb install [-l] [-r] [-s]
Например: adb install c:/adb/app/autostarts.apk
Ключи: Блокировка приложения -l. Переустановить приложение, с сохранением данных -r. Установить приложение на карту памяти -s. - Удаление приложения с устройства.
adb uninstall [-k]
Ключи: Не удалять сохраненные данные приложения и пользователя -k. - Ожидать подключения устройства.
adb wait-for-device - Запустить службу/демон.
adb start-server - Остановить службу/демон.
adb kill-server - Получить статус устройства.
adb get-state
Значения статусов: offline (выключен), bootloader (режим загрузчика), device (режим штатной работы Android). - Получить серийный номер.
adb get-serialno - Непрерывный опрос состояния.
adb status-window - Перемонтировать для записи. Требуется для работы скриптов, которые изменяют данные на разделах system, data, cache и т.д.
adb remount - Перезагрузка в режим bootloader.
adb reboot bootloader - Перезагрузка в режим recovery.
adb reboot recovery - Перезапуск демона с правами root.
adb root - Перезапуск демона, прослушивающего USB.
adb usb - Перезапуск демона, прослушивающего порт TCP.
adb tcpip - Запуск службы через USB. Параметры: defaultroute debug dump local notty usepeerdns
adb ppp [параметры]
Примеры работы по ADB:
Ниже перечисленные примеры можно вводить в командную строку. Для удобства их можно вписать в файл-сценария .cmd или .bat.
Удаление папки со всеми вложенными каталогами и файлами. Например всей музыки.
Информация о разделах внутренней памяти аппарата.
Информация о точках монтирования, общем и свободном пространстве на разделах.
Информация о разделении ROM-памяти на разделы.
Резервная копия определенного раздела.
Монтирование разделов /system и /data в режиме mod-recovery.
FastBoot — консольное приложение для ПК. Используется как правило для прошивки и аварийного восстановления работоспособности аппарата.
Список команд fastboot:
- Список присоединенных устройств в режиме fastboot.
fastboot devices - Прошивка файла .img в раздел устройства.
fastboot flash - Стирание раздела. Разделы: boot, recovery, system, userdata, radio.
fastboot erase - Прошивка из файла имя_файла.zip
fastboot update - Прошивка boot + recovery + system.
fastboot flashall - Показать переменные bootloader.
fastboot getvar - Отправить ядро (kernel) на устройство и запустить его из оперативной памяти, без прошивки.
fastboot boot [ ] - Отправить ядро (kernel) на устройство и прошить его.
fastboot flash:raw boot [ ] - Продолжить загрузку.
fastboot continue - Перезагрузить аппарат.
fastboot reboot - Перезагрузить аппарат в режим bootloader.
fastboot reboot-bootloader
Перед командами «fastboot» можно использовать ключи:
- -w стереть данные пользователя и кэш
- -s Указать серийный номер устройства.
- -p
Указать название устройства.
Указать размер страниц nand. По умолчанию 2048.
Примеры работы в режиме fastboot:
Прошивка модема. Переименовать файл модема в radio.img и положить его в папку C:\ADB\.
Восстановление прошивки из резервной копии.
Источник