From de6c964136c890b58770b491317b5744c1c54c86 Mon Sep 17 00:00:00 2001 From: QIU Date: Wed, 12 Aug 2026 11:44:54 +0000 Subject: [PATCH] build!: drop armeabi-v7a abiFilters, restore 64-bit builds MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 背景: abiFilters=armeabi-v7a 的唯一成因是 Morse Expert 的 32 位 libnativedecoderjni.so, 该 .so 已在上一提交删除。此前整个应用被迫以 32 位运行: 64 位设备走兼容层、寻址受限, 且不满足应用市场的 64 位要求。 原注释称"用户设备为 32 位软件"已与实际不符 (测试机为 64 位)。 改动: - app/build.gradle.kts: 移除 defaultConfig.ndk.abiFilters 及相关注释 - feature/cw/build.gradle.kts: 移除 abiFilters; 移除 constraintlayout 依赖 (仅被已删除的 activity_main.xml 使用); 移除 UTF-8 JavaCompile 配置 (模块已无 Java 源码) - feature/cw 改为依赖 core:domain + core:data (DeepCW 前后处理落在 core) 验证: grep -rn 'abiFilters|jniLibs' --include=*.kts . (排除 build/) => 无匹配 APK ABI 覆盖将在 CI 产物中验证 (预期含 arm64-v8a) --- app/build.gradle.kts | 7 ------- feature/cw/build.gradle.kts | 20 ++------------------ 2 files changed, 2 insertions(+), 25 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2a339944..625e1558 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -11,13 +11,6 @@ val keystoreProperties = Properties().apply { } android { - // CW 解码 native 库仅 armeabi-v7a(照搬 Morse Expert 1.15): 全 ABI 打包会在 - // arm64 设备 loadLibrary 失败, 强制 32 位兼容(用户设备为 32 位软件) - defaultConfig { - ndk { - abiFilters += listOf("armeabi-v7a") - } - } androidResources { // 显式保留全部语言(防 shrinkResources 丢弃 in/id 印尼语配置); AGP 9 用 localeFilters localeFilters += listOf( diff --git a/feature/cw/build.gradle.kts b/feature/cw/build.gradle.kts index 3a781ca9..2bf4fcff 100644 --- a/feature/cw/build.gradle.kts +++ b/feature/cw/build.gradle.kts @@ -1,4 +1,3 @@ -import com.android.build.api.dsl.LibraryExtension import com.android.build.api.variant.CanProduceConsumerProguardFiles plugins { @@ -7,19 +6,8 @@ plugins { android { namespace = "com.rtbishop.look4sat.feature.cw" - compileOptions { - encoding = "UTF-8" - } - // 照搬 Morse Expert 1.15: native 解码器仅 armeabi-v7a - defaultConfig { - ndk { - abiFilters += listOf("armeabi-v7a") - } - } } -// CW 类保持规则(JNI 按类名注册 + 照搬混淆类保逻辑), 由 app 的 R8 消费 -// AGP 9: consumer 规则走 variant 级 CanProduceConsumerProguardFiles androidComponents { onVariants(selector().all()) { variant -> (variant as? CanProduceConsumerProguardFiles)?.consumerProguardFiles?.add( @@ -29,10 +17,6 @@ androidComponents { } dependencies { - implementation("androidx.constraintlayout:constraintlayout:2.2.1") -} - -// 照搬的 Java 源码含中文注释, 强制 UTF-8 编译(compileOptions 在部分 AGP 版本不生效) -tasks.withType().configureEach { - options.encoding = "UTF-8" + implementation(project(":core:domain")) + implementation(project(":core:data")) }