ReKernelFlasher

Инструмент прошивки ядра Android: прошивка, резервное копирование и восстановление образов ядра Android на рутированных устройствах. Создан на основе KernelFlasher, поддерживается Bacillusf.

Kernel Flasher Logo


Идея

Оригинальный KernelFlasher не очень дружелюбен к новичкам: нет диалога двойного подтверждения, легко прошить не тот раздел, многие новички не задумываются о резервных копиях, и после ошибки остаётся лишь беспомощно ждать полный образ... К тому же исходный репозиторий был заархивирован, поэтому я сделал этот форк

Возможности

Документация/docs

Документация по использованию (китайский) Usage (English)

Главная

ФункцияОписание
Информация об устройствеПоказывает модель, номер сборки, версию Android, версию приложения, версию ядра, Root-менеджер (KernelSU/Magisk/APatch), суффикс слота, версию SUSFS, версию Boot HAL
Меню перезагрузкиРаскрывается кнопкой в правом верхнем углу; перезагрузка в систему/Recovery/Bootloader/Download/EDL, каждый раз с диалогом подтверждения

Прошивка

ФункцияОписание
Управление слотамиПросмотр информации о слотах A/B (загружаемость, отметка об успешной загрузке, Boot SHA1, формат образа, информация о ramdisk)
Прошивка AK3 ZipПрошивка совместимого с AnyKernel3 zip-архива
Прошивка AK3 Zip (mkbootfs)Прошивка AK3 zip в режиме mkbootfs
Прошивка драйвера KernelSUПрошивка модуля ядра KernelSU LKM
Прошивка образа разделаВыбор файла .img для прошивки в указанный раздел
Резервное копирование разделаВыбор раздела для резервного копирования локально
Восстановление из резервной копииВосстановление раздела из истории резервных копий
Управление vendor_dlkmМонтирование/размонтирование/маппинг/отмена маппинга раздела vendor_dlkm
Проверка версии ядраИзвлечение строки версии ядра из текущего образа boot
История операцийПросмотр всех записей о прошивке/резервном копировании/перезагрузке и других операциях

Настройки

ФункцияОписание
Управление резервными копиямиПросмотр и управление всеми резервными копиями
Источники обновленийДобавление и управление JSON URL обновлений ядра
Автоматическое резервное копированиеУправляется переключателем: при включении перед прошивкой раздела или AK3 целевой раздел автоматически копируется в /sdcard/KernelFlasher-AutoBackup/
Просмотр записей автокопированияПоказывает историю автоматических резервных копий; долгое нажатие позволяет перейти к файлу
Сохранение ramoopsСохранение журнала сбоев ядра
Сохранение dmesgСохранение журнала ядра
Сохранение logcatСохранение системного журнала
Масштаб интерфейса (DPI)Перетаскиванием ползунка настраивается масштаб интерфейса (50%-150%); применяется по нажатию

Двойное подтверждение

Все операции сопровождаются диалогом подтверждения (с анимацией появления), в том числе:

  • Прошивка AK3/образа/драйвера KernelSU → отображение исходного пути → пути целевого раздела
  • Резервное копирование/восстановление/удаление раздела
  • Перезагрузка в различные режимы

История операций

  • Постоянное хранение в /sdcard/KernelFlasher/history.json
  • Формат записи: yyyy年MM月dd日HH时 操作描述
  • Поддержка очистки истории

Автоматическое резервное копирование

  • После включения перед прошивкой автоматически извлекает образ целевого раздела через dd
  • Путь сохранения: /sdcard/KernelFlasher-AutoBackup/{unix时间戳}/分区名.img
  • Одновременно создаются метаданные backup.yml и общий индекс summary.json
  • Долгое нажатие на странице записей открывает файл резервной копии через системный файловый менеджер

Технологический стек

КатегорияТехнология
ЯзыкKotlin
UIJetpack Compose + Material3
АрхитектураMVVM
Rootlibsu
База данныхRoom
Сериализацияkotlinx.serialization
HTTPOkHttp + Retrofit

Нативные бинарные файлы

ФайлНазначение
magiskbootРаспаковка/упаковка образа Boot
lptools_staticУправление логическими разделами
httools_staticЭкспорт Fstab, AVB, монтирование
bootctlУправление слотами A/B
busyboxУниверсальный набор shell-утилит

Сборка

# Предварительные требования: JDK 21, Android SDK (compileSdk 37)
./gradlew assembleDebug   # отладочная сборка
./gradlew assembleRelease # релизная сборка