Как получить root-права на Adnroid
22 февраля 2019 г. android
Быстроman как получить root-права на Android смартфоне. Я буду использовать OnePlus 3 и Android 8.0, но инструкция должна подойти и к другим устройствам.
Предисловие
Все действия вы выполняете на свой страх и риск. При неправильной последовательности, можно потерять данные или превратить телефон в кирпич. Также, важно понимать, что рутованный девайс, кроме некоторых удобств, несет в себе риски безопасности. Будьте внимательны.
Подготовка
Для начала, надо на компьютер установить adb и fastboot. Это утилитки из Android SDK для работы с подключенным по USB телефоном.
Для Windows есть удобный установщик adb, fastboot — https://forum.xda-developers.com/showthread.php?t=2317790
Вот здесь официальные дистрибутивы под все платформы — https://developer.android.com/studio/#downloads
Далее качаем TWRP. Это что-то типа livecd для телефона. Образ некой системы, в которой загрузится телефон, и в ней мы установим приложение Magisk.
TWRP (я брал версию 3.1.0-0-twrp.img) — https://dl.twrp.me/twrp/
Если у вас OnePlus, вот TWRP для них — https://eu.dl.twrp.me/oneplus3/ (надо брать этот twrp если вылетает ошибка dtb not fount)
Magisk — это open source приложение, которое дает рут права на телефон, и позволяет скрывать наличие рута от других приложений, чтобы работал Android Pay. Также, обновления системы, которые прилетают “по воздуху”, не должны сломаться. Лучше использовать Magisk, а не SuperSU.
Magisk - https://github.com/topjohnwu/Magisk/releases
Теперь включим режим разработчика на телефоне. Для этого в настройках, в разделе “О телефоне”, надо несколько раз нажать на “Номер сборки”. После раза 10-го, появится сообщение “Теперь вы разработчик”, и в настройках появится новый пункт “Для разработчиков”.
Разблокировка загрузчика
Разблокировка загрузчика удаляет все данные с телефона и sd-карты
Разблокировка загрузчика без установленного далее Magisk, может сломать Android Pay.
Для разблокировки:
-
В настройках “Для разработчиков” включаем “Отладка по USB”, “Заводская разблокировка” и “Варианты перезагрузки”
-
Загружаемся в fastboot mode. Для этого зажимаем кнопку выключения, выбираем “Перезагрузка” и далее “Загрузчик” Второй способ — выключить телефон, зажать клавишу громкости вверх и клавишу включения. Через несколько секунд появится fastboot mode
-
Подключаем телефон по USB-кабелю, и проверяем что устройство доступно в системе. Для этого выполняем:
В списке должен быть телефон$fastboot devices fa______d fastboot
-
ПОСЛЕ ЭТОЙ КОМАНДЫ ТЕЛЕФОН ПЕРЕЗАГРУЗИТСЯ И ВСЕ ДАННЫЕ БУДУТ УДАЛЕНЫ. Делайте бэкапы всех данных до этого шага.
На телефоне выбираем качелькой громкости Yes, подтверждаем клавишей питания. При загрузке появится меню с выбором режима, выбираем качелькой просто Start, и подтверждаем клавишей питания. Телефон долго будет перезагружаться, и загрузится сброшенным в заводское состояние.$fastboot oem unlock
Теперь загрузчик разблокирован.
Получение root
- Подключаем телефон к компьютеру в режиме передачи файлов MTP
- Заливаем на телефон zip-файл Magisk, скачанный выше из github
- Загружаемся в TWRP. Для этого перезагружаем телефон в fastboot mode (см. пункт 2 инструкции выше как разблокировать загрузчик) и на компьютере выполняем:
$fastboot boot twrp.img downloading 'boot.img'... OKAY [ 0.565s] booting... OKAY [ 0.464s] finished. total time: 1.044s
- В TWRP выбираем Install, и устанавливаем залитый на телефон zip Magisk.
- После установки TWRP предлагает очистить кэш (wipe). Это не нужно, просто ребутаем
- После ребута появляется приложение Magisk Manager. Если этого не произошло, попробуйте взять другую версию TWRP и повторить процесс.
Все, теперь с помощью Magisk Manager можно выдавать root-овые права приложениям, которые их запрашивают, а также скрывать от других приложений, что этот девайс рутованный, чтобы не сломать Android pay.