EN
sash0k
sash0k
3 subscribers
goals
13.45 of $ 10 344 money raised
ну - значит возможно

Опыт разблокировки загрузчика Xiaomi в 2024 году

⚠️ Важно: заметка касается только MIUI, я не рассматриваю HyperOS
Разблокировка загрузчика обычно используется для замены операционной системы на устройстве. Это несёт дополнительные риски для безопасности устройства, поэтому рекомендую заниматься этим, только если вы точно уверены в необходимости. Сам я, как пользователь устройства Xiaomi, долгое время использовал штатную MIUI, которая, с некоторой донастройкой (необходимо вырезать bloatware и рекламные сервисы) меня полностью устраивала.
Но вот попал ко мне "на опыты" старый Redmi 6A (кодовое имя cactus). Устройство уже не поддерживается официально, и на последней версии официалки работает медленно. Несмотря на то, что это Mediatek (mt6765), эксперимент по простой прошивке через SPFT не удался - процесс останавливался с ошибкой. Пришлось разбираться с официальным способом разблокировки загрузчика, что и стало причиной появления данной заметки.
1) Включаем настройки разработчика, там включаем опцию OEM разблокировка и также видим, что рядом есть опция Mi Unlock
2) Регистриуем Mi аккаунт, привязанный к сим-карте, затем через личный кабинет необходимо дополнительно привязать к нему же электронную почту.
⚠️ Важно: я зарегистрировал для разблокировки отдельный ящик на сервисе mail.ru, код подтверждения при верификации почему то приходит на него не сразу, а только после третьей повторной отправки.
Также при подтверждении телефона сервис просит отправить смс на указанный (российский) номер, поэтому на симке должно быть немного денег.
3) Ставим сим-карту в телефон, и настраиваем интернет именно с этой карты (для надежности можно оставить её одну, wifi также не подойдет) Заходим в Mi аккаунт на телефоне, потом идем в настройки для разработчика и в опции Статус Mi Unlock выполняем привязку: нажимаем кнопку Связать аккаунт с устройством
4) Теперь можно приступать непосредственно к процессу разблокировки. У Xiaomi существует официальная утилита Mi Unlock, но у неё оказалось достаточно много проблем:
⚠️ работает только под Windows
⚠️ есть проблемы в интерфейсе, например в старых версиях 5.x, 6.x оказалось невозможно добавить телефон для подтверждения из-за того, что не удаётся сменить код страны в настройках.
⚠️ самое плохое: для использования официальной утилиты после привязки необходимо ждать некоторое случайное число часов (в общем случае несколько дней, которые могут доходить до недели)
5) Поэтому вместо официальной я решил использовать альтернативное решение MiUnlockTool: https://github.com/offici5l/MiUnlockTool
Эта утилита открытая и кроссплатформенная (написана на Python, который обычно уже включен в большинстве linux-дистрибутивов). Насколько я понял - она выполняет те же запросы к серверам Xiaomi для разблокировки, но обходит счетчик ожидания, разблокировать можно сразу после привязки аккаунта. Утилита активно развивается, не нашёл в репозитории теги стабильных версий поэтому на всякий случай укажу, что мне удалось разблокировать с помощью транка с коммитом cf41aa26c4b4
6) Перезагружаем телефон в режим fastboot (в случае Redmi 6A это громкость вниз + кнопка вкл). Подключаемся к компьютеру.
Да, также на компьютере должен быть установлен fastboot: он может быть в репозиториях вашего линукс-дистрибутива, или необходимо скачать Android SDK). Проверяем, при необходимости настраиваем переменные окружения.  Если команда $ fastboot devices возвращает id устройства, а команда $ fastboot getvar all считывает и возвращает список переменных, значит можно двигаться дальше.
7) Запускаем в терминале: $ python3 MiUnlockTool.py
Программа откроет браузер и предложит авторизоваться в Mi аккаунте, код подтверждения придет на привязанную почту. Затем, после успешной авторизации, необходимо будет скопировать длинную ссылку https://unlock.update.miui.com/... из браузера в терминал и нажать <Enter>. Далее она обработает данные из ссылки и разблокирует загрузчик. Прикладываю процесс успешной разблокировки:
⚠️ Важно: в процессе разблокировки для большинства моделей телефонов (в том числе у моего Redmi 6A) все пользовательские данные будут стёрты, необходимо заранее сделать резервные копии, если в телефоне есть что-то нужное.
8) Телефон перезагружается, проходим настройку MIUI заново, в настройках разработчика мы увидим, что загрузчик разблокирован.
Поздравляю, телефон готов к установке сторонних прошивок.

Subscription levels

Донат на кофе / coffee for developer

$ 1,04 per month
Поддержать разработчика / Just support

Подсветить проблему / issue

$ 10,4 per month
Возник вопрос по моим приложениям, или нашли проблему? Решение в приоритетном порядке. / Have a question or issue? First-level priority.

Запрос новой фичи / feature request

$ 104 per month
Необходим новый функционал в моих приложениях? Подписывайся - решим. / Need any new feature in my apps? Subscribe!

Запрос приложения / application request

$ 1 552 per month
Есть идея простого opensource приложения (1-2 экрана)? Это сюда. /
Needs for any simple opensource application? Subscribe here.
Go up