Android factory reset from adb что это
Platform-tools: r31.0.3
ADB: 1.0.41 (31.0.3-7562133)
Fastboot: 31.0.3-7562133
Make_f2fs: 1.14.0 (2020-08-24)
Mke2fs: 1.46.2 (28-Feb-2021)
Последнее обновление утилит в шапке: 01.08.2021
ADB (Android Debug Bridge — Отладочный мост Android) — инструмент, который устанавливается вместе с Android-SDK и позволяет управлять устройством на базе ОС Android.
Работает на всех Android-устройствах, где данный функционал не был намеренно заблокирован производителем.
Здесь и далее: PC — ПК, компьютер к которому подключено устройство.
ADB — консольное приложение для PC, с помощью которого производится отладка Android устройств, в том числе и эмуляторов.
Работает по принципу клиент-сервер. При первом запуске ADB с любой командой создается сервер в виде системной службы (демона), которая будет прослушивать все команды, посылаемые на порт 5037.
Официальная страница
ADB позволяет:
- Посмотреть какие устройства подключены и могут работать с ADB.
- Просматривать логи.
- Копировать файлы с/на аппарат.
- Устанавливать/Удалять приложения.
- Удалять (очищать) раздел data.
- Прошивать (перезаписывать) раздел data.
- Осуществлять различные скрипты управления.
- Управлять некоторыми сетевыми параметрами.
Поставляется ADB в составе инструментария разработчика Андроид (Android SDK), который, в свою очередь входит в состав Android Studio.
Если что-то неправильно, то в списке подключенных устройств (List of devices attached) будет пусто.
Скрытые команды 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->девайс.
adb pull [ ] Копировать файл/папку девайс->PC.
adb sync [ ] Копировать PC->девайс только новые файлы.
Ключи:
-l Не копировать, только создать список.
adb shell Запуск упрощенного unix shell.
Примеры использования
adb emu Послать команду в консоль эмулятора
adb install [-l] [-r] [-s] Послать приложение на устройство и установить его.
Пример: adb install c:/adb/app/autostarts.apk Установить файл autostarts.apk лежащий в папке /adb/app/ на диске с:
Ключи:
-l Блокировка приложения
-r Переустановить приложение, с сохранением данных
-s Установить приложение на карту памяти
Установка split apk
adb uninstall [-k] Удаление приложения с устройства.
Ключи:
-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 [параметры] Запуск службы через USB.
Note: you should not automatically start a PPP connection. refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
Параметры:
defaultroute debug dump local notty usepeerdns
FastBoot — консольное приложение для PC. Используется для действий над разделами
fastboot devices Список присоединенных устройств в режиме fastboot.
fastboot flash Прошивает файл .img в раздел устройства.
fastboot erase Стереть раздел.
Разделы: boot, recovery, system, userdata, radio
Пример: fastboot erase userdata Стирание пользовательских данных.
fastboot update Прошивка из файла имя_файла.zip
fastboot flashall Прошивка boot + recovery + system.
fastboot getvar Показать переменные bootloader.
Пример: fastboot getvar version-bootloader Получить версию bootloader.
fastboot boot [ ] Скачать и загрузить kernel.
fastboot flash:raw boot [ ] Создать bootimage и прошить его.
fastboot devices Показать список подключенных устройств.
fastboot continue Продолжить с автозагрузкой.
fastboot reboot Перезагрузить аппарат.
f astboot reboot-bootloader Перезагрузить девайсв режим bootloader.
Перед командами fastboot можно использовать ключи:
-w стереть данные пользователя и кэш
-s Указать серийный номер устройства.
-p
Указать название устройства.
-c Переопределить kernel commandline.
-i Указать вручную USB vendor id.
-b Указать в ручную базовый адрес kernel.
-n
Указать размер страниц nand. по умолчанию 2048.
Команду 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
Для уменьшения вывода лога до приемлемого уровня нужно использовать выражения фильтра. Выражения фильтра позволяют указать системе нужные комбинации и , остальные сообщения система не выводит.
Выражения фильтра имеют следующий формат : . где указывает нужный тэг, указывает минимальный уровень приоритета для выбранного тэга. Сообщения с выбранным тэгом и приоритетом на уровне или выше указанного записываются в лог. Можно использовать любое количество пар : в одном выражении фильтра. Для разделения пар : используется пробел.
Пример ниже выводит в лог все сообщения с тэгом «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
Источник
Hard reset через adb
Каждый Android смартфон имеет режим восстановления, который позволяет стереть все данные с внутренней памяти смартфона, и вернуть заводские настройки. Тем не менее, данный метод не всегда эффективен.
Если вам не удалось выполнить хард ресет (он же сброс к заводским настройкам) через режим восстановления (Recovery mode), Google предоставила специальную утилиту командной строки Android Debug Bridge для доступа к мобильному устройству и выполнению определенных команд через компьютер. Таким образом, вы можете сделать сброс настроек через компьютер.
Мы хотим обратить ваше внимание, что ADB команды для сброса настроек через компьютер предназначен для опытных пользователей. Но, если вы внимательно прочитайте нашу инструкцию, у вас не должно возникнуть проблем.
Инструкция: Как сделать сброс настроек через компьютер?
Шаг 1
Перейдите на веб-сайт Android разработчиков и скачайте Android System Development Kit. Щелкните правой кнопкой мыши на ZIP архив и выберите «Извлечь все». Нажмите кнопку «Обзор» и выберите каталог «C:Program Files».
Шаг 2
Перейдите в папку, в которую были извлечены файлы и нажмите «F2», чтобы переименовать ее. Дайте папке простое название, например, «AndroidADT».
Шаг 3
Щелкните правой кнопкой мыши на «Мой Компьютер» и выберите «Свойства». Нажмите на опцию «Дополнительные параметры системы» и в окне «Дополнительно» нажмите кнопку «Переменные среды» (Environment Variables).
Шаг 4
В окне «Системные переменные» выберите опцию «Path» и нажмите кнопку “Изменить”. Когда откроется окно редактирования переменных системы, прокрутите строку в самый конец, и напишите путь к архиву, который вы распаковали ранее («;C:Program FilesAndroidADTsdkplatform-tools») (без ковычек). Убедитесь, что вы добавили точку с запятой в начале пути. Нажмите «OK», чтобы сохранить изменения.
Шаг 5
Наведите курсор на верхний правый угл экрана и нажмите кнопку «Поиск». Напишите «cmd» в поле поиска и нажмите на иконку программы в результатах поиска, чтобы запустить окно командной строки.
Шаг 6
Включите ваш смартфон и подключить его к USB-порту компьютера. Напишите «adb shell» и нажмите «Enter». Когда ADB подключается к мобильному устройству, напишите «—wipe_data» и нажмите «Enter». Ваш телефон перезагрузится в режиме восстановления и автоматически сбросится к заводским настройкам.
Теперь вы знаете, как сделать сброс настроек через компьютер.
Уважемый читатель! Если вдруг описанный в статье метод Вам не помог — помогите, пожалуйста, остальным — напишите как Вы справились с проблемой или задайте вопрос. Кстати, ответ на Ваш вопрос, возможно, уже есть в комментариях.
Пожалуйста, не оставайтесь равнодушными — поделитесь с людьми полезной информацией. Если знаете ответ на имеющийся вопрос — напишите, пожалуйста, кому-то информация очень пригодится. Заранее спасибо!
На сайте мы описывали множество способов, которые помогали нам сбрасывать графический ключ или пароль с устройства. Но сегодня разберем тот случай, в котором у вас нет возможности сбросить настройки используя комбинации в наборе номера и клавиш. Этот способ будет происходить с использованием командной стройки. Совсем недавно, я написал статью про, что такое ABD и какие команды необходимо знать пользователю. Сброс настроек на заводское состояние своего устройства, можно посмотреть здесь «Сброс настроек» и если вашего устройства нет в списке, то можете попросить создав тему на форуме здесь «Вопрос- Ответ» , тему начинать так «Как мне сбросить настройки на и ваше устройство», мы напишем все возможные варианты сброса и укажем вам ссылки на информацию. Теперь к теме. Пользователи, которые ранее разблокировали раздел «Для разработчиков» и не активировали функцию «Откладка по USB»,сбросить настройки через ABD не получиться.
Если вы ранее активировали раздел разработчиков и включили функцию «Откладка по USB», то можно продолжать дальше. Теперь скачайте ABD с прошлой темы или же с официального сайта. Перед тем как работать с Android SDK, я настоятельно рекомендую прочитать следующие темы:
Когда ABD через официальный сайт установлена, ставьте драйвера для устройства. Драйвера для вашего смартфона или планшета можно скачать с официального сайта вашего устройства. Только после того, как драйвера и ABD будет установлено на ваш компьютер откройте командную строку и в ней укажите путь к ABD или же воспользуйтесь прошлой статьей и узнайте как проще попасть сразу по пути в командной строке.
После того как открыли командную строку и указали путь к ABD, подключите свое устройство к компьютеру и дождитесь установки дополнительных драйверов. При подключении устройства к компьютеру у вас на рабочем слое устройства должно появиться окно, с подтверждением о разрешении на подключение. Ставьте галочку и нажимайте на «ОК»
Вводим комбинацию «adb devices» и проверяем подключено ли устройство. Если в логе не будет ошибок у и вы увидите свое устройство, то наберите следующею команду «adb shellrm /data/system/gesture.key«. После этого перезагрузите свое устройство пароль должен быть удален с вашего гаджета.
Если не помогло то попробуйте вот эту команду:
adb shell
su
rm /data/system/locksettings.db
rm /data/system/locksettings.db-wal
rm /data/system/locksettings.db-shm
reboot
Ваше устройство должно перезагрузиться уже без ключа или пароля.
Все команды для сброса были взяты с иностранного источника XDA-Developers, точную работу можно узнать только опробовав на свое устройстве. Вреда вы не должны принести своему гаджету. На этом все спасибо за внимание! Если остались вопросы, ждем комментарии ниже
How can i do the factory reset in android using ADB command? I had used adb reboot recovery command to get reset. But third party applications couldn’t be cleared somehow.Is it correct way to achieve using ADB?
Actually, I want to do factory reset android devices through java code.What can be solution here?
4 Answers 4
You can send intent MASTER_CLEAR in adb:
Источник