背景: feature/cw 内含 Morse Expert 1.15 (VE3NEA, 闭源免费软件) 的 jadx 反编译产物, 外加仅 armeabi-v7a 的 libnativedecoderjni.so (1.4MB)。该 .so 无 64 位版本, 迫使 app 模块设置 abiFilters=armeabi-v7a, 把整个应用锁死在 32 位。 闭源软件的反编译产物不具备任何分发授权。 改动 (共 58 项): - 删除 pas/* (JNI 入口 nativedecoder/decoder/cwstru/system) - 删除 com/ve3nea/morse_expert/* (MainActivity/DecodedTextView/ScaleView/ WaterfallSurfaceView) - 删除混淆包 B B0 D E2 F2 H2 I0 I2 J2 K1 d1 g3 i3 j1 j3 k3 s - 删除 suncompat/* (sun.misc.Unsafe/Cleaner 存根) - 删除 jniLibs/armeabi-v7a/libnativedecoderjni.so - 删除配套 layout (activity_main, cw_panel_main)、menu、4 个 ic_baseline_* 图标 - proguard-rules.pro 清空 keep 规则 (已无 JNI 按类名注册依赖) 验证: find feature/cw/src -name '*.java' | wc -l => 0 find feature/cw/src -name '*.so' | wc -l => 0 git ls-files feature/cw 仅剩 build.gradle.kts, proguard-rules.pro, CwDecodeScreen.kt, CwSettingsDialog.kt 及 5 份 app_values.xml 注意: 本提交后 CwDecodeScreen.kt 暂时无法编译 (它 inflate 了已删除的 R.layout.activity_main), 将在 DeepCW 内核接入后重写为纯 Compose。 后续: DeepCW ONNX 内核接入 (纯 Kotlin 前后处理), abiFilters 解除恢复 arm64。
3 lines
193 B
Prolog
3 lines
193 B
Prolog
# CW 模块无 native 代码、无按类名注册的 JNI,因此不需要任何 keep 规则。
|
|
# DeepCW 走 ONNX Runtime(自带 consumer proguard 规则),前后处理为普通 Kotlin。
|