From 2d0c9d46024c86e8fb98ff95fc2b37ad90222ecd Mon Sep 17 00:00:00 2001 From: zhaogd Date: Tue, 28 Jul 2026 11:23:33 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20Android=204.x=20Dal?= =?UTF-8?q?vik=20multidex=20=E5=AF=BC=E8=87=B4=E7=9A=84=20ClassNotFoundExc?= =?UTF-8?q?eption?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit androidx.startup.InitializationProvider 在 Application 启动时被加载, 但被分配到 secondary dex 导致 Dalvik VM 找不到该类。 通过 multiDexKeepProguard 强制保留在 main dex 中。 --- app/build.gradle | 1 + app/multidex-config.pro | 3 +++ 2 files changed, 4 insertions(+) create mode 100644 app/multidex-config.pro diff --git a/app/build.gradle b/app/build.gradle index 11e1e3e..02d3697 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -14,6 +14,7 @@ android { versionCode 1 versionName "1.0" multiDexEnabled true + multiDexKeepProguard file('multidex-config.pro') ndk { abiFilters "armeabi-v7a", "arm64-v8a" diff --git a/app/multidex-config.pro b/app/multidex-config.pro new file mode 100644 index 0000000..9a86dca --- /dev/null +++ b/app/multidex-config.pro @@ -0,0 +1,3 @@ +# 强制保留在 main dex,避免 Android 4.x Dalvik multidex 加载失败 +-keep class androidx.startup.** { *; } +-keep class com.google.android.exoplayer2.** { *; }