A new launcher app for the MF800B router
- Java 74.2%
- Python 25.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| app | ||
| tools | ||
| .gitignore | ||
| build.gradle | ||
| CREATING_A_LAUNCHER.md | ||
| gradle.properties | ||
| README.md | ||
| settings.gradle | ||
MF800B Launcher Replacement
Clean-room replacement for the MF800B's on-device HOME launcher (128×128px display). Shows 13 live metrics: Rayhunter status, battery, RSSI, connectivity generation, SIM state, Wi-Fi clients, Wi-Fi/LTE Rx/Tx (cumulative bytes), CPU/memory, LTE IP, IMSI, IMEI.
Icons: 12×12 pixel art, generated with tools/gen_icons.py (requires Pillow).
Installation
The launcher replaces the vendor's default launcher without modifying /system:
# Build
export ANDROID_HOME=~/Android/Sdk
export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
~/gradle-dist/gradle-8.5/bin/gradle assembleDebug
# Install on device
adb install app/build/outputs/apk/debug/app-debug.apk
# Make it the default launcher (disables vendor launcher)
adb shell pm disable-user --user 0 com.himilink.HiMILauncher2
adb shell am start -a android.intent.action.MAIN -c android.intent.category.HOME
# To revert to vendor launcher:
adb uninstall com.dangerzone.mf800blauncher
adb shell pm enable com.himilink.HiMILauncher2
Building
Prerequisites
- Android SDK at
~/Android/Sdk - Gradle 8.5 at
~/gradle-dist/gradle-8.5/bin/gradle - Java 21 (
JAVA_HOMEmust point to JDK 21, not 26+)
Build command
export ANDROID_HOME=~/Android/Sdk
export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
~/gradle-dist/gradle-8.5/bin/gradle assembleDebug
Output: app/build/outputs/apk/debug/app-debug.apk
Version History
- v1: Vendor panel clone
- v2: Dark dashboard, 13 metrics, pixel icons
- v3: Rayhunter status row added
- v4: Battery % + charging state
- v5: Operator name, uptime, alert count, cumulative bytes
- v6–v13: refinements (icons, fonts, column widths)
See CREATING_A_LAUNCHER.md for detailed changelog.
Cleaning
Remove build artifacts:
rm -rf app/build/ .gradle/
Generate Gradle wrapper (optional):
export ANDROID_HOME=~/Android/Sdk
export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
~/gradle-dist/gradle-8.5/bin/gradle wrapper
Then use ./gradlew instead of the full Gradle path.