> Внимание!

Новые темы необходимо создавать только в корневом разделе! В дальнейшем они будут обработаны модераторами.



ADB | fastboot - их использование | Работа со вспомогательными Android утилитами



Реп: (8919)
ADB | fastboot - их использование

Скрипты на shell под Android » | Скрипты, твики, собери их все » | Ядро Linux изнутри » |
Способы обхода Google (FRP) » | Обработка образов под Windows » | Разметка памяти мобильных устройств » |
Общие принципы восстановления загрузчиков на Qualcomm »


Platform-tools: r34.0.4 rev.2
ADB: 1.0.41 (34.0.4-10411341)
Fastboot: 34.0.4-10411341
Make_f2fs (casefold): 1.16.0 (2023-04-11)
Mke2fs: 1.46.6 (1-Feb-2023)
Последнее обновление утилит в шапке: 27.07.2023


Что такое ADB?
ADB (Android Debug Bridge - Отладочный мост Android) - инструмент, который устанавливается вместе с Android-SDK и позволяет управлять устройством на базе ОС Android.
Работает на всех Android-устройствах, где данный функционал не был намеренно заблокирован производителем.
Здесь и далее: PC - ПК, компьютер к которому подключено устройство.
ADB - консольное приложение для PC, с помощью которого производится отладка Android устройств, в том числе и эмуляторов.
Работает по принципу клиент-сервер. При первом запуске ADB с любой командой создается сервер в виде системной службы (демона), которая будет прослушивать все команды, посылаемые на порт 5037.
Официальная страница
ADB позволяет:
  • Посмотреть какие устройства подключены и могут работать с ADB.
  • Просматривать логи.
  • Копировать файлы с/на аппарат.
  • Устанавливать/Удалять приложения.
  • Удалять (очищать) раздел data.
  • Прошивать (перезаписывать) раздел data.
  • Осуществлять различные скрипты управления.
  • Управлять некоторыми сетевыми параметрами.
Поставляется ADB в составе инструментария разработчика Андроид (Android SDK), который, в свою очередь входит в состав Android Studio.


Установка
Распаковываем архив (рекомендуется распаковывать в корень диска или в другую папку, не содержащую русских букв и пробелов в пути). Например: C:\\adb
Настройки соединения, устройства. Драйверы.
Настраиваем телефон.
Для этого перейдите в: "Настройки" - "О телефоне" - 7 раз нажмите на номер сборки. В настройках для разработчиков активируйте отладку по USB.
При подключении USB-кабеля выбираем "Передача файлов".
Проверяем соединение на компьютере.
Перейдите в, раннее распакованную, папку с утилитами. В ней, в адресной строке папки, сверху, напишите - "cmd" (без кавычек) и нажмите Enter.
Проверьте доступность устройства и правильность установки драйверов. Для этого выполните adb или fastboot команду:
adb devices
fastboot devices
Если все хорошо, драйвера успешно установлены и телефон правильно подключен - вы увидите следующий ответ:
<серийный номер устройства> device
или
<серийный номер устройства> fastboot

Если что-то неправильно, то в списке подключенных устройств (List of devices attached) будет пусто.

Примеры установки на Linux:
ADB и все, что с помощью него можно сделать (Пост Martifik #28444786)
ADB и все, что с помощью него можно сделать (Пост Aliana_Basil #93244308)

Авто-установщик под Windows
ADB и все, что с помощью него можно сделать (Пост Aliana_Basil #93708609)
Как использовать?
Так как adb/fastboot - консольные утилиты, работать с ними надо из командной строки.
Перейдите в, раннее распакованную, папку с утилитами. В ней, в адресной строке папки, сверху, напишите - "cmd" (без кавычек) и нажмите Enter.
Далее работаем посредством нужных вам команд.
Команды ADB
Решение: CreateFileW 'nul' failed: Не удается найти указанный файл.

Скрытые команды ADB
adb -d Команда посылается только на устройство подключенное через USB.
Внимание: Выдаст ошибку, если подключено больше одного устройства.

adb -e Команда посылается на устройство в эмуляторе.
Внимание: Выдаст ошибку, если подключено больше одного эмулятора.

adb -s <серийный_номер_устройства> Команда посылается на устройство с указанным серийным номером:

adb -p <имя устройства или путь> Команда посылается на устройство с указанным именем:
Если ключ -p не указан, используется значение переменной ANDROID_PRODUCT_OUT.

adb devices
Список всех подсоединенных устройств.

adb connect <хост>[:<порт>]
Подсоединиться к андроид хосту по протококу TCP/IP через порт 5555 (по умолчанию, если не задан).

adb disconnect [<хост>[:<порт>]]
Отсоединиться от андроид подключенного через TCP/IP порт 5555 (по умолчанию, если не задан).
Если не задан ни один параметр, отключиться от всех активных соединений.

adb push <путь на PC> <путь на андроид> Копировать файл/папку PC->девайс.

adb pull <путь на андроид> [<путь на PC>] Копировать файл/папку девайс->PC.

adb sync [<каталог>]
Копировать PC->девайс только новые файлы.
Ключи:
-l Не копировать, только создать список.

adb shell Запуск упрощенного unix shell.
Примеры использования

adb emu <команда> Послать команду в консоль эмулятора

adb install [-l] [-r] [-s] <название_приложения.apk> Послать приложение на устройство и установить его.
Пример: adb install c:/adb/app/autostarts.apk Установить файл autostarts.apk лежащий в папке /adb/app/ на диске с:
Ключи:
-l Блокировка приложения
-r Переустановить приложение, с сохранением данных
-s Установить приложение на карту памяти
Установка split apk

adb uninstall [-k] <название_приложения.apk> Удаление приложения с устройства.
Ключи:
-k Не удалять сохраненные данные приложения и пользователя.

adb wait-for-device Ждать подключения устройства.

adb start-server Запустить службу/демон.

adb kill-server Остановить службу/демон.

adb get-state Получить статус:
offline Выключен.
bootloader В режиме начальной загрузки.
device В режиме работы.

adb get-serialno Получить серийный номер.

adb status-window Непрерывный опрос состояния.

adb remount Перемонтировать для записи. Требуется для работы скриптов, которые изменяют данные на.

adb reboot bootloader
Перезагрузка в режим bootloader.

adb reboot recovery Перезагрузка в режим recovery.

adb root Перезапуск демона с правами root

adb usb Перезапуск демона, прослушивающего USB.

adb tcpip <порт> Перезапуск демона, прослушивающего порт TCP.

adb ppp <tty> [параметры] Запуск службы через USB.
Note: you should not automatically start a PPP connection. <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
Параметры:
defaultroute debug dump local notty usepeerdns

Команды FastBoot
FastBoot - консольное приложение для PC. Используется для действий над разделами

fastboot devices Список присоединенных устройств в режиме fastboot.
fastboot flash <раздел> <файл> Прошивает файл .img в раздел устройства.

fastboot erase <раздел> Стереть раздел.
Разделы: boot, recovery, system, userdata, radio
Пример: fastboot erase userdata Стирание пользовательских данных.

fastboot update <имя_файла.zip> Прошивка из файла имя_файла.zip

fastboot flashall Прошивка boot + recovery + system.

fastboot getvar <имя_переменной> Показать переменные bootloader.
Пример: fastboot getvar version-bootloader Получить версию bootloader.

fastboot boot <kernel> [<ramdisk>] Скачать и загрузить kernel.

fastboot flash:raw boot <kernel> [<ramdisk>] Создать bootimage и прошить его.

fastboot devices Показать список подключенных устройств.

fastboot continue Продолжить с автозагрузкой.

fastboot reboot Перезагрузить аппарат.

fastboot reboot-bootloader Перезагрузить девайсв режим bootloader.
Перед командами fastboot можно использовать ключи:
-w стереть данные пользователя и кэш
-s <серийный номер> Указать серийный номер устройства.
-p <product> Указать название устройства.
-c <cmdline> Переопределить kernel commandline.
-i <vendor id> Указать вручную USB vendor id.
-b <base_addr> Указать в ручную базовый адрес kernel.
-n <page size> Указать размер страниц nand. по умолчанию 2048.
Прошивка радио.
Переименовываем радио в radio.img и кладем его в папку ADB.
@echo off
fastboot reboot-bootloader
echo После загрузки bootloader нажмите любую клавишу...
pause
fastboot flash radio radio.img
fastboot reboot

Восстановление прошивки из бэкапа.
@echo off
fastboot reboot-bootloader
echo После загрузки bootloader нажмите любую клавишу...
pause
fastboot flash userdata data.img
fastboot flash system system.img
fastboot flash boot boot.img
fastboot reboot

Прошивка анимации при загрузке
Качаем бутанимацию. Переименовываем файл в bootanimation.zip и кладем его в папку ADB.
@echo off
adb remount
adb push bootanimation.zip /data/local

Получение SuperCID (Дебрендинг
@echo off
adb devices
fastboot reboot-bootloader
echo После загрузки bootloader нажмите любую клавишу...
pause
fastboot oem writecid 11111111
fastboot reboot-bootloader
fastboot getvar cid
fastboot reboot

Прошивка рекавери.
Распаковываем образ рекавери. Переименовываем файл в recovery.img и кладем его в папку с ADB.
@echo off
fastboot reboot-bootloader
echo После загрузки bootloader нажмите любую клавишу...
pause
fastboot flash recovery recovery.img
fastboot reboot

Прошивка загрузочного раздела
Переименовываем кусок прошивки отвечающий за загрузку в boot.img и кладем его в папку ADB.
@echo off
fastboot reboot-bootloader
echo После загрузки bootloader нажмите любую клавишу...
pause
fastboot flash boot boot.img
fastboot reboot

Отладка
Что такое LogCat и как им пользоваться?
Как снять logcat различными способами и приложениями
adb logcat [<Ключи>] [<фильтр>] Посмотреть логи с отладочной информацией:

Команду logcat можно использовать с машины разработки
$ adb logcat
или из удаленного shell
# logcat Каждое сообщение лога в Android имеет тэг и приоритет
Тэг – это строка указывающая компонент системы, от которого принято сообщение (например: View для системы view)
Приоритет – имеет одно из нижеследующих значений (в порядке от меньшего к большему):
V - Verbose (Низший приоритет).
D - Debug
I - Info
W - Warning
E - Error
F - Fatal
S - Silent (Наивысший приоритет, при котором ничего не выводится).

Получить список тэгов, используемых в системе, вместе с их приоритетами можно запустив logcat. В первых двух столбцах каждого из выведенных сообщений будут указаны <приоритет>/<тэг>.
Пример выводимого logcat сообщения:
I/ActivityManager( 585): Starting activity: Intent { action=android.intent.action...}

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

Пример ниже выводит в лог все сообщения с тэгом "ActivityManager" с приоритетом "Info" или выше, и сообщения с тэгом "MyApp" и приоритетом "Debug" или выше:
adb logcat ActivityManager:I MyApp:D *:S
Последний элемент в выражении фильтра *:S устанавливает приоритет "silent" для всех остальных тэгов, тем самым обеспечивая вывод сообщений только для "View" и "MyApp". Использование *:S – это отличный способ для вывода в лог только явно указанных фильтров (т.е. в выражении фильтра указывается "белый список" сообщений, а *:S отправляет все остальное в "черный список").

При помощи следующего выражения фильтра отображаются все сообщения с приоритетом "warning" или выше для всех тэгов:
adb logcat *:W

Если logcat запускается на машине разработчика (не через удаленный adb shell), можно также установить значение выражения фильтра по умолчанию задав переменную окружения ANDROID_LOG_TAGS:
export ANDROID_LOG_TAGS="ActivityManager:I MyApp:D *:S"

Следует обратить внимание что задав переменную окружения ANDROID_LOG_TAGS она не будет работать в эмуляторе/устройстве, если вы будете использовать logcat в удаленном shell или используя adb shell logcat.
Вышеописанная команда export работает в ОС *nix и не работает в Windows.

Контроль формата вывода лога

Сообщения лога в дополнение к тэгу и приоритету содержат несколько полей метаданных. Можно изменять формат вывода сообщений показывая только конкретные поля метаданных. Для этого используется параметр -v и указывается один из ниже перечисленных форматов вывода.

brief Показывать приоритет/тэг и PID процесса (формат по умолчанию).
process Показывать только PID.
tag Показывать только приоритет/тэг.
thread Показывать только процесс:поток и приоритет/тэг.
raw Показать необработанное сообщение, без полей метаданных.
time Показывать дату, время вызова, приоритет/тэг и PID процесса.
long Показывать все поля метаданных и отдельно сообщения с пустыми строками.

При запуске logcat можно указать формат вывода используя параметр -v:
adb logcat [-v <format>]
Пример, который показывает сообщения в формате thread:
adb logcat -v thread
Нужно отметить, что можно использовать только один формат с параметром -v.

Просмотр альтернативного буфера лога

Система логов Android держит несколько кольцевых буферов для лога сообщений и не все сообщения отправляются в основной буфер. Для отображения дополнительных сообщений лога нужно запустить logcat с параметром -b.

Таким образом можно посмотреть один из альтернативных буферов:
radio Просмотр буфера с сообщениями связанными с радио/телефоном.
events Просмотр буфера с сообщениями связанными с событиями.
main Просмотр основного буфера (по умолчанию).

Пример ниже показывает буфер с радио и телефонными сообщениями:
adb logcat -b radio

Просмотр stdout и stderr

По умолчанию система Android шлет вывод stdout и stderr (System.out и System.err) в /dev/null (удаляет). В процессах, которые выполняются в виртуальной машине Dalvik (Dalvik VM) может осуществляться запись копии вывода в лог файл. В этом случае система записывает сообщения в лог используя тэги stdout и stderr с приоритетом I.
Для перенаправления вывода нужно остановить эмулятор/устройство, затем выполнить команду shell setprop для включения перенаправления вывода. Пример того как это делается:
$ adb shell stop
$ adb shell setprop log.redirect-stdio true
$ adb shell start

Система сохраняет эту настройку, пока работает эмулятор/устройство. Чтобы использовать эту настройку по умолчанию в эмуляторе/устройстве, нужно добавить эту команду в /data/local.prop в эмуляторе/устройстве.

Список параметров команды logcat
-b <buffer> Загрузить альтернативный буфер лога для просмотра, такой как event или radio. Основной буфер используется по умолчанию.
-c Очистить (сбросить) лог и выйти.
-d Вывести лог на экран и выйти.
-f <filename> Записать сообщения лога в файл <filename>. По умолчанию в stdout.
-g Вывести размер указанного буфера лога и выйти.
-n <count> Установить максимальное количество ротаций лога (количество хранимых сжатых фрагментов лога) <count>. По умолчанию 4. Требует параметр -r.
-r <kbytes> Выполнять ротацию каждые <kbytes> вывода (разделять лог на фрагменты по <kbytes>). По умолчанию 16. Требует параметр -f.
-s Устанавливает silent фильтром по умолчанию.
-v <format> Устанавливает формат вывода сообщений лога. По умолчанию brief.
Полезное
Если не появляется запрос на отладку USB
Возможное решение проблем с подключением
Список софта для ПК для GUI работы с файловой системой через ADB
Как перевести в режим полета xiaomi на андройд 10 череp adb и обратно?

Полезные скрипты
ˇ
Скрипты на shell под Android
adb shell <команда из списка shell> Команда посылается через shell
Пример: adb shell rm -r /system/sd/app Удаление приложений, установленных на карту памяти.
Пример: adb shell rm -r /system/sd/app-private Удаление приложений, установленных на карту памяти в раздел private.
Пример: adb shell cat /proc/mtd Выдаст информацию о разделах внутренней памяти девайса.
Выдаст что-то вроде:
dev: size erasesize name
mtd0: 000a0000 00020000 "misc"
mtd1: 00420000 00020000 "recovery"
mtd2: 002c0000 00020000 "boot"
mtd3: 0fa00000 00020000 "system"
mtd4: 02800000 00020000 "cache"
mtd5: 0af20000 00020000 "userdata"

Пример: adb shell df Выдаст информацию о свободных ресурсах в разделах памяти аппарата.
Выдаст что-то вроде:
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 160664 0 160664 0% /dev
/dev/block/mtdblock4 40960 1292 39668 3% /cache
/dev/block/mtdblock3 256000 146888 109112 57% /system
/dev/block/mtdblock5 179328 125728 53600 70% /data
/dev/block/mmcblk0p1 15521280 10056880 5464400 65% /sdcard

Создаем в папке с ADB файл с расширением .cmd или .bat (проверяем что .cmd или .bat это расширение файла а не его имя) и пишем туда:
скопировать блок (задаем блок и выходящие имя)
adb shell su -c dd if=/dev/block/mmcblk0p9 of=/sdcard/factoryfs.img bs=4096


узнать какие блоки то в общем есть
adb shell cat /proc/partitions


Пример:
adb shell mount -o rw /dev/block/mtdblock3 /system
adb shell mount -o rw /dev/block/mtdblock5 /data

Монтировать разделы /system и /data в режиме ClockworkMod recovery.

разблокировать от графического ключа на блокировке (после команды ввести любой жест)
adb shell rm /data/system/gesture.key

Графическая блокировка. Код блокировки экрана - решение проблем.

Остановка службы ADB.
@echo off
taskkill /F /IM adb.exe

Решение ошибки api-ms-win-crt-locale-l1-1-0.dll
Решение ошибки Exception occurred while executing 'grand'
Несколько слов о режимах работы телефона
Получение logcat определённого приложения
Вводить ADB/Fastboot команды другому телефону
Вторичные автоматизированные инструменты для работы с ADB


Скачать:
Platform-tools (adb & fastboot) r34.0.4 rev.2
Platform-tools (adb & fastboot) r23.1.0 Windows XP
Platform-tools (adb & fastboot) Для Android

Прошлые версии
Platform-tools (adb & fastboot) r34.0.4
Platform-tools (adb & fastboot) r34.0.3
Platform-tools (adb & fastboot) r34.0.1 rev.2
Platform-tools (adb & fastboot) r34.0.1
Platform-tools (adb & fastboot) r34.0.0
Platform-tools (adb & fastboot) r33.0.3
Platform-tools (adb & fastboot) r33.0.2
Platform-tools (adb & fastboot) r33.0.1
Platform-tools (adb & fastboot) r33.0.0
Platform-tools (adb & fastboot) r32.0.0
Platform-tools (adb & fastboot) r31.0.3
Platform-tools (adb & fastboot) r31.0.2
Platform-tools (adb & fastboot) r31.0.1
Platform-tools (adb & fastboot) r31.0.0
Platform-tools (adb & fastboot) r30.0.5
Platform-tools (adb & fastboot) r30.0.4
Platform-tools (adb & fastboot) r30.0.3
Platform-tools (adb & fastboot) r30.0.2
Platform-tools (adb & fastboot) r30.0.1
Platform-tools (adb & fastboot) r30.0.0
Platform-tools (adb & fastboot) r29.0.6
Platform-tools (adb & fastboot) r29.0.5
Platform-tools (adb & fastboot) r29.0.4
Platform-tools (adb & fastboot) r29.0.3
Platform-tools (adb & fastboot) r29.0.2
Platform-tools (adb & fastboot) r29.0.1
Platform-tools (adb & fastboot) r29.0.0
Platform-tools (adb & fastboot) r28.0.3
Platform-tools (adb & fastboot) r28.0.2
Platform-tools (adb & fastboot) r28.0.1
Platform-tools (adb & fastboot) r28.0.0
Platform-tools (adb & fastboot) r27.0.1
Platform-tools (adb & fastboot) r27.0.0
Platform-tools (adb & fastboot) r26.0.2
Platform-tools (adb & fastboot) r26.0.1
Platform-tools (adb & fastboot) r26.0.0
Platform-tools (adb & fastboot) r26.0.0-RC2
Platform-tools (adb & fastboot) r26.0.0-RC1
Platform-tools (adb & fastboot) r25.0.6
Platform-tools (adb & fastboot) r25.0.5
Platform-tools (adb & fastboot) r25.0.4
Platform-tools (adb & fastboot) r25.0.3
Platform-tools (adb & fastboot) r25.0.2
Platform-tools (adb & fastboot) r25.0.1
Platform-tools (adb & fastboot) r25.0.0
Platform-tools (adb & fastboot) r24.0.4
Platform-tools (adb & fastboot) r24.0.3
Platform-tools (adb & fastboot) r24.0.2
Platform-tools (adb & fastboot) r24.0.1
Platform-tools (adb & fastboot) r24
Platform-tools (adb & fastboot) r24 RC3


Куратор темы: Displax


Сообщение отредактировал Displax - 27.07.23, 16:52
Причина редактирования: 34.0.4.r2



Реп: (500)
nano26 @ 30.09.2012, 20:25 *
ADB

ADB — приятно познакомиться!
добавлен документ Adobe Acrobat (.pdf) с картинками ввода команд :good:

В жизни андроида есть две немаловажные вещи, Точнее режима — ADB и Fastboot.

Оба слова — это утилиты которые доступны из Android SDK при помощи командной строки. Играют они важную роль в жизни вашего телефона Если что-то случается, что-то летит или зависает, то без них вы не сделаете ничего… разве что швырнете кусок пластмассы в мусорку.

ADB — режим, который доступен вам, как говорилось выше, из-под Android SDK. Выполняет он много функций


Начнем с установки и настройки ADB. И все что вам пригодится в этом деле:
Как установить ADB/USB драйвера для Android устройств

Android SDK - Скачать
WinRar - Скачать (32bit) Скачать (64bit)
Windows PC
USB Кабель
Rooted HTC Dream (Google G1)

Настройка Android SDK

Скачиваем файл (sdk) выше
Распаковываем на рабочий стол
Берем «android-sdk-windows» папку и кидаем ее в корень вашего системного диска (C:\)

Правый клик на «Мой компьютер» и жмем на свойства
Выбираем закладку «Дополнительно» либо «Дополнительные настройки» (или что-то в этом роде) (Vista/Windows 7)
Там выбираем «Переменные среды» (англ. — Environment Variables)
Нажимаем создать

Название переменной: adb
Значение: C:\android-sdk-windows\tools

После этого:

1. Запускаем SDK Setup.exe
2. Если ругается на нас ошибкой, то идем в настройки и жмем на «Force http//…..»
3. Выбираем все опции и жмем пока все добро скачается.

Если возникают какие-то проблемы, то скачайте папку USB-DRIVERS - ТУТ (Windows XP/Vista/Windows 7)

Подготовка вашего телефона к ADB

В вашем телефоне идем в настройки (Settings)
Выбираем Приложения (Applications)
Выбираем Разработка (Development)
Убедитесь что ‘USB Debugging’ отмечено галочкой (Т.е. включено)

Установка драйверов

Подключите ваш телефон через USB и НЕ МОНТИРУЙТЕ SD!
Ваш компьютер должен обноружить новое устройство, после чего он сам попытается установить Android 1.0 driver
Пускай он это сделает
Если же не находит, то нажмите «Установить драйвер вручную»
Драйвер который нам необходим расположен в папке с вашим Android SDK 1.5r2 (C:\android-sdk-windows\usb_driver)
После чего ваше устройство ADB Android должно быть установленно! Возьмите с полки пирожок
Для Android SDK 1.5r3+

1. Запускаем SDK Setup.exe
2. Если ругается на нас ошибкой, то идем в настройки и жмем на «Force http//…..»
3. Выбираем все опции и жмем пока все добро скачается.

Если возникают какие-то проблемы, то скачайте папку USB-DRIVERS - ТУТ (Windows XP/Vista/Windows 7)

Проверяем обнаруживает ли ADB ваш телефон:

Открываем команандную строку (Выполнить -> cmd -> enter)
И введите:

cd C:\android-sdk-windows\tools {Enter}
adb devices {после этого вы должны увидеть список устройств)
adb shell {вы должны увидеть символ # в строке}
Теперь вы настроили все что бы работал режим adb

Введите в cmd команду adb (без ничего), и нажмите enter. Ниже вы увидите все команды доступные в данном режиме
Поздравляю! Вы закончили с установкой и с настройкой ADB !:-)
Список всех ADB команд:
-d - directs command to the only connected USB devic
e
returns an error if more than one USB device is
present.
-e - directs command to the only running emulator.
returns an error if more than one emulator is r
unning.
-s <serial number> - directs command to the USB device or emulator w
ith
the given serial number
-p <product name or path> - simple product name like 'sooner', or
a relative/absolute path to a product
out directory like 'out/target/product/sooner'.

If -p is not specified, the ANDROID_PRODUCT_OUT

environment variable is used, which must
be an absolute path.
devices - list all connected devices

device commands:
adb push <local> <remote> - copy file/dir to device
adb pull <remote> <local> - copy file/dir from device
adb sync [ <directory> ] - copy host->device only if changed
(see 'adb help all')
adb shell - run remote shell interactively
adb shell <command> - run remote shell command
adb emu <command> - run emulator console command
adb logcat [ <filter-spec> ] - View device log
adb jdwp - list PIDs of processes hosting a JDWP transport

adb install [-l] [-r] <file> - push this package file to the device and instal
l it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data
)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories
)
adb bugreport - return all information from the device
that should be included in a bug report.

adb help - show this help message
adb version - show version num

scripting:
adb wait-for-device - block until device is online
adb start-server - ensure that there is a server running
adb kill-server - kill the server if it is running
adb get-state - prints: offline | bootloader | device
adb get-serialno - prints: <serial-number>
adb status-window - continuously print device status for a specifie
d device
adb remount - remounts the /system partition on the device re
ad-write
adb root - restarts adb with root permissions

networking:
adb ppp <tty> [parameters] - Run PPP over USB.
Note: you should not automatically start a PDP connection.
<tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
[parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
<localdir> can be interpreted in several ways:

- If <directory> is not specified, both /system and /data partitions will be u
pdated.

- If it is "system" or "data", only the corresponding partition
is updated.

Пример ввода команд

adb push
Пример - adb push c:\app.apk /data/app

adb pull
Пример - adb pull /data/app_s/Stock.apk

adb install
Пример - adb install c:/apps/apps2sd.apk

adb uninstall
Пример - adb uninstall linda.apk

################################################################################


Как сохранить заводскую прошивку?!
ИНСТРУКЦИЯ:
Как сделать бэкап прошивки (например, чтобы сохранить заводскую): (ТЕЛО ДОЛЖНО БЫТЬ РУТОВАННЫМ!)

Распакуйте архив Прикрепленный файлADB.ZIP (290,89К) Количество загрузок: 3154

В папке ADB находится файл backup.bat

Код

adb shell su -c "dd if=/dev/block/stl6 of=/sdcard/factoryfs.rfs bs=4096"
adb shell su -c "dd if=/dev/block/bml5 of=/sdcard/zImage bs=4096"
adb shell su -c "dd if=/dev/block/bml10 of=/sdcard/modem.bin bs=4096"



Выставить на теле USB debug -> ON
Так же желательно включить на телефоне режим, при котором экран не гаснет при зарядке (там же, где включается USB debug)

Присоединить тело по USB.
Запустить backup.bat

Подтвердить на теле Root Access.
После этого через пару минут на Sd карте - файлы Вашей прошивки!


Теперь необходимо запаковать полученные файлы factoryfs.rfs, zImage и modem.bin в архив tar.
В этот же tar можно запихнуть файл datafs.rfs, взятый из любой прошивки (желательно того-же "поколения" 2.1 или 2.2, что и Ваша )
В результате получится TAR, полностью совместимый с флэштулом ODIN и в любой момент Вы можете вернуть телефон в девственное состояние.
На всякий случай после прошивки желательно сделать вайп или из рекавери, чтобы отформатировать кэш (cache)



Как запихивать в TAR :

Я делаю ТАРы Cygwin-ом.Но можно извратиться следующим способом.
В TotalCommander ставим плагин для TAR.Открываем ЛЮБОЙ готовый TAR. Добавляем СВОЙ файл, а всё остальное - удаляем!

То же самое можно сделать из Терминала или Putty (по SSH):
Для этого в папке ADB есть скрипт backup.sh

Код

#!/system/bin/busybox sh
dd if=/dev/block/stl6 of=/sdcard/factoryfs.rfs bs=4096
dd if=/dev/block/bml5 of=/sdcard/zImage bs=4096
dd if=/dev/block/bml10 of=/sdcard/modem.bin bs=4096


Скопировать его на тело в /data

В Терминале или Putty:

su (только для Терминала!)
chmod 755 /data/backup.sh/data/backup.sh

СПОСОБ ДЛЯ ТЕХ, КТО "НИ БУМ-БУМ" в ADB, но умеет набирать текст на клавиатуре.


Все делается прямо на телефоне через Эмулятор Терминала. Описано шаг за шагом. НЕ СПЕШИ, А ТО УСПЕЕШЬ!
Что нужно: Root, эмулятор терминала, свободное место на SD Card >300 Mb.
Требование к пользователю: Руки хотя бы мутно напоминающие прямоту, Спокойное расположение духа, Сосредоточенность.
ВНИМАНИЕ: При вводе команд в терминале всегда дожидайтесь ответа терминала (на каждую команду он всегда отвечает). Пока не дождались - не вводите ничего. Просто ждите.

Итак, приступим. (Учитывая что уже есть Root и Эмулятор Терминала на телефоне)

1) Запускаем Эмулятор Терминала
2) Набираем команду: su (запросит права Суперпользователя. Разрешаем)
3) Набираем команду: mkdir /sdcard/Backup (ждем сообщения от терминала что папка создана)
4) Набираем команду: dd if=/dev/block/bml5 of=/sdcard/Backup/zImage (ждем сообщения от терминала что " такой-то файл такого-то размера создан за такое-то время")
5) Набираем команду: dd if=/dev/block/bml10 of=/sdcard/Backup/modem.bin (ждем сообщения от терминала что " такой-то файл такого-то размера создан за такое-то время")
6) Набираем команду: dd if=/dev/block/stl6 of=/sdcard/Backup/factoryfs.rfs (ждем сообщения от терминала что " такой-то файл такого-то размера создан за такое-то время". Будет очень долго делать - самый большой и самый важный файл!)
7) После выполнения всех манипуляций закрываем Эмулятор Терминала
8) Заходим в Диспетчер файлов и ищем папку Backup
9а) Если в папке есть три файла zImage, modem.bin, factoryfs.rfs то все пучком
9б) Если какого-то файла нету то выполняем повторно пункт 4) или 5) или 6) соответственно (смотря какого файла нету).
10) Это и есть ваш бэкап заводской прошивки. Заныкайте его куда-нибудь на черный день.

Если сильно за него боитесь, то заныкайте несколько копий в разные места.

======================================================

FAQ "Как восстановить заводскую прошивку"

Что нужно: Odin Multi Downloader, любая официальная прошивка запакованная одним TAR-архивом, файлы бэкапа вашей заводской прошивки (файлы zImage, modem.bin, factoryfs.rfs)
Требование к пользователю: Руки хотя бы мутно напоминающие прямоту, Спокойное расположение духа, Сосредоточенность.
Итак, приступим.

1) Берем TAR-архив любой (желательно последней) прошивки (по желанию можете переименовать его как хотите)
2) Заменяем в нем файлы zImage, modem.bin, factoryfs.rfs на свои из бэкапа
3) Запускаем Odin Multi Downloader (файл OPS идет в комплекте с прогой. Для нашей модели он называется apollo_0531.ops)
4) Ставим птичку на "One Package" в Option (Левая сторона окна под СОМ-портами)
5) Жмем кнопку "Оne Package" (Левый нижний угол окна программы)
6) Выбираем свой TAR-архив (там где вы его ложили)
7) Включаем на телефоне Download Mode (на выключенном телефоне зажимаем кнопки "Громкость -", "Домой" (центральная кнопка) и кнопку "Включение" - должна появится синяя дискета.)
8) Подключаем к компу (в Odin Multi Downloader должно появится уведомления в окне СОМ-портов)
9) Жмем "Start"
10) Ждем пока в окне "Message" не появится надпись "Close serial port and wait until rebooting." (обычно телефон сам начинает включаться)
11) Отключаем кабель от телефона
12) Ждем включения телефона, а дальше все как обычно...

Прикрепленные файлы
Прикрепленный файл Better_Terminal_Emulator_Pro_v4.04.apk
Прикрепленный файл jackpal.AndroidTerminalEmulator.1.0.21.apk

Спасибо Доцент

Прикрепленные файлы

Прикрепленный файлРабота с ADB.pdf ( 447.42 КБ )


Сообщение отредактировал sask - 14.03.18, 14:44



Реп: (189)
nano26 @ 30.09.2012, 20:25 *
ADB позволяет:
Посмотреть какие устройства подключены и могут работать с ADB.
Просматривать логи HTC.
Копировать файлы с/на HTC.
Устанавливать/Удалять приложения на HTC.
Удалять (очищать) раздел data на HTC
Прошивать (перезаписывать) раздел data на HTC.
Осуществлять различные скрипты управления HTC.
Управлять некоторыми сетевыми параметрами HTC.

А почему только на HTC? Что, с девайсами других производителей ADB не работает?
Парируйте



Реп: (189)
nano26,
Ну, например вытаскивание логов, перезагрузку, прошивку и пр. можно выполнять на любом девайсе. А под спойлером "Команды ADB" опять "на HTC". :lol:
Тема то назывется ADB и все что с помощью него можно сделать. Всё хорошо расписано, но "на HTC" немного сбивает с толку))

Сообщение отредактировал Foxololo - 05.10.12, 08:38



Реп: (250)
Возможно будет кому то нужно надеюсь
скопировать блок (задаем блок и выходящие имя)
adb shell su -c dd if=/dev/block/mmcblk0p9 of=/sdcard/factoryfs.img bs=4096

узнать какие блоки то в общем есть
adb shell cat /proc/partitions

разблокировать от графического ключа на блокировке (после команды ввести любой жест)
adb shell rm /data/system/gesture.key



Реп: (111)
народ почему на команду adb shell mount -o rw,remount /dev/block/mmcblk0p12 /system отвечает mount: Operation not permitted



Реп: (14)
eiskboy @ 27.10.2012, 02:22 *
народ почему на команду adb shell mount -o rw,remount /dev/block/mmcblk0p12 /system отвечает mount: Operation not permitted

Может быть у тебя этой директории нет. Допустим стоит Циаген мод. Или с рут правами косяк.

Добавлено 04.11.2012, 15:03:

Да и по поводу остановки ADB есть команды.
adb kill-server

Зачем пользоваться
@echo off
taskkill /F /IM adb.exe

если можно все делать сразу?

Заниматься копирайтом не задумываясь что как работает не хорошо. ;)

Сообщение отредактировал MotoArhangell - 04.11.12, 15:08



Реп: (114)
Вопрос: а можно ли делать бэкап прошивки через fastboot? Прошить можно, вижу, а как насчёт бэкапа, сама собой так и напрашивается эта функция, но не нашёл.



Реп: (114)
Помогите, хочу прошить радио-не могу ни через фастбут, ни через рекавери. Загрузчик с-офф. Пожалуйста, напишите как можно сделать. В папку с адб файл radio.img кидал, пробовал скрипт для прошивки радио из шапки - где-то видимо не хватает умения. За помощь буду благодарен)
П.С. телефон в адб виден, команды выключения, перезагрузки выполняет.

Сообщение отредактировал hobbit1 - 27.11.12, 20:17



Реп: (2)
пытаюсь снять графический ключ с помощью строки adb shell rm /data/system/gesture.key он мне выдает permission danied. это что же , аппарат рутированый должен быть?



Реп: (9)
MotoArhangell,
а как сделать /data/ read-write?



Реп: (355)
Там все описано.



Реп: (0)
а можно ли заменять файлы в папке system?
если да то как?



Реп: (0)
как убрать ошибку read-only file system?



Реп: (316)
Коллеги.
Как посмотреть по/через adb лог текущей загрузки? Т.е. при виснущей загрузке посмотреть на чём виснет.
:blush:
Я чесслово читал шапку. Не понял. :-(



Реп: (3)
Ребят! Помогите кто-нибудь! Никак не могу деодекс сделать. На скринах видны какие ошибки! Вроде в framework проблема! Два способа пробовал. Что делать-то? Выручите! Прошивка стоковая!

Прикрепленные файлы

Прикрепленный файл4PDA.bmp ( 1.07 МБ )



Реп: (316)
Так. К вопросу о просмотре текущего лога загрузки.
Я думал что это я тупой (см ADB и все что с помощью него можно сделать (Пост #18876713) ), а тут другое.
Подключил другой девайс, по команде adb logcat утиль показывает лог загрузки.
А на нужном девайсе, молчит.
что это может быть?
default.prop включение adb стоит.

gaiver83,
А чем деодекс делаете то?
> Вроде в framework проблема!
Вполне похоже.

Сообщение отредактировал rgusev - 24.01.13, 11:30



Реп: (0)
adb на команду adb devices выдает сообщение list of devices attached, все дрова вроде поставил..
как сделать чтобы adb показывало серийный номер при этой команде??



Реп: (114)
geras1moff @ 01.02.2013, 20:14 *
adb на команду adb devices выдает сообщение list of devices attached, все дрова вроде поставил..

У меня тоже самое, хотя реально работает, пробовал проги ставить и fastboot reboot. Видимо adb не понимает, что там телефон ему выдаёт в ответ на devices.



Реп: (0)
А можно ли с помощью adb восстановить lg optimus hub ?
окирпичился после прошивки



Реп: (1)
Вопрос такой . У меня планшет prestigio adb скопирован в корень и прописан в переменной среде( я это делал и на windows xp b windows 7 ) , во-первых установка драйвера была сложной , вначале отказалась система принимать драйвер, я изменил немного драйвер (оригинальный идущий в комплекте с ADB) и добавил строчки с ID оборудование найденным в системы , драйвер установился но принудительно , нашлось устройство Android Composit ADB Interface , я его снова удалил и затем указал на драйвер идущий в комплекте с ADB , снова устройство нашлось.
Дал команду adb devices вышло сообщение об успешном запуске adb , а вот список присоедененных устройств пуст, поверял утилитой , этот Android Composit ADB Interface не подключен , в плашете режим отладки включен, кто подскажет где искать причину , почему не подключается ....


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 28.09.23, 03:37