Repository navigation
v3.1.1
v3.1.1 — the user-selected .ko now survives app restarts.
- App v3.1.1 (versionCode 15): the picked module is stored as
custom-ko.ko+custom-ko.meta(forced flag + label) in the app-specific files dir (Android/data/o3.st.root1/files), restored inonCreate, and re-validated — a stale or failing file is deleted (unless it was forced) and the UI returns to adaptive. Long-press the module row to clear the choice and use the built-in LKMs again. - Payload unchanged:
libo3p.so1,496,044 B, sha256 e479e539bf812f7fe0dc18734ec6f47727fc6f650b4a8d9fd45751a9c6500a2b. - Hardware-verified on yingtian (2026-11-01): persistence across force-stop and cold boot; forced 6.6.000-vermagic module (
CUSTOM_KO force reason=kernel_series_mismatch→KSU_INSMOD_OUT:[rc=0]→KSU_MODULE LIVE); long-press clear; adaptive cold boot (KSU_BLOB v2 tag=3 matched=1→origin=builtin→KSU_MODULE LIVE, SukiSU manager working). The automatic fallback branch still has no hardware trigger (the relink rewrites vermagic, so the forced module loads); it remains desktop-tested. - APK: 14,239,248 B, sha256 a013cbffbe43036e4b7ba3a55554332ab02d23e444103bd043d9e9ef4b9289d0.
- Requires Shizuku in shell mode (
uid=2000,u:r:shell:s0); root is boot-only. Full details indocs/AGENT_HANDOFF.md.