ReKernelFlasher

An Android kernel flashing tool. Flash, back up and restore Android kernel images on rooted devices. A fork of KernelFlasher, maintained by Bacillusf.

ReKernelFlasher Logo


Motivation

The original KernelFlasher is not very beginner-friendly: there is no confirmation dialog, it is easy to flash the wrong partition, and many newcomers have no backup habit — flash the wrong thing once and you can only wait helplessly for a full OTA package. The original repository is also archived, so this fork exists.

Features

Docs

Usage

Home

FeatureDescription
Device infoModel, build version, Android version, app version, kernel version, root manager (KernelSU/Magisk/APatch), slot suffix, SUSFS version, Boot HAL version
Reboot menuOpened from the top-right button; reboot to system / Recovery / Bootloader / Download / EDL, each with a confirmation dialog

Flash

FeatureDescription
Slot managementView A/B slot info (bootable, marked successful, boot SHA1, image format, ramdisk info)
Flash AK3 ZipPick an AnyKernel3-compatible zip and flash it
Flash AK3 Zip (mkbootfs)Flash an AK3 zip in mkbootfs mode
Flash KernelSU driverFlash the KernelSU LKM kernel module
Flash partition imagePick a .img file and flash it to a chosen partition
Back up partitionBack up a chosen partition to local storage
Restore backupRestore a partition from a previous backup
vendor_dlkm managementMount / unmount / map / unmap the vendor_dlkm partition
Check kernel versionExtract the kernel version string from the current boot image
Operation historyView all flash / backup / reboot operations

Settings

FeatureDescription
Backup managementView and manage all backups
Update sourcesAdd and manage kernel update JSON URLs
Auto backupToggle; when on, the target partition is backed up before flashing a partition or AK3, into /sdcard/KernelFlasher-AutoBackup/
View auto-backup recordsShow auto-backup history; long-press to locate the file
Save ramoopsSave kernel crash logs
Save dmesgSave kernel logs
Save logcatSave system logs
UI scale (DPI)Drag the slider to scale the UI (50%–150%); tap Apply to take effect

Confirmation

Every operation has a confirmation dialog (with fade-in animation), including:

  • Flash AK3 / image / KernelSU driver → shows source path → target partition path
  • Back up / restore / delete a partition
  • Reboot to each mode

Operation history

  • Persisted to /sdcard/KernelFlasher/history.json
  • Record format: yyyy年MM月dd日HH时 <description>
  • History can be cleared

Auto backup

  • When enabled, the target partition is extracted with dd before flashing
  • Save path: /sdcard/KernelFlasher-AutoBackup/{unix timestamp}/<partition>.img
  • Also generates backup.yml metadata and a summary.json index
  • Long-press a record to open the backup file with the system file manager

Tech stack

CategoryTechnology
LanguageKotlin
UIJetpack Compose + Material3
ArchitectureMVVM
Rootlibsu
DatabaseRoom
Serializationkotlinx.serialization
HTTPOkHttp + Retrofit

Native binaries

FilePurpose
magiskbootUnpack / repack boot images
lptools_staticLogical partition management
httools_staticFstab export, AVB, mounting
bootctlA/B slot control
busyboxGeneral shell utilities

Build

# Requirements: JDK 21, Android SDK (compileSdk 37)
./gradlew assembleDebug   # debug
./gradlew assembleRelease # release