zhaogd
|
37738504b9
|
fix: Android 4.2 兼容性修复 - 降级第三方库 + 移除 ExoPlayer + multidex 配置
1. OkHttp 3.14.9 -> 3.12.0(Android10Platform 引用 Android 10+ API 导致 VerifyError)
2. Gson 2.10.1 -> 2.8.6(ReflectionHelper 引用 Java 9+ API 导致 VerifyError)
3. Retrofit 2.9.0 -> 2.6.0(与客户环境一致,配合 OkHttp 3.12.0)
4. Coroutines 1.7.3 -> 1.6.4(1.7+ 要求 minSdk 21)
5. 移除 ExoPlayer 2.19.1,改用系统原生 MediaPlayer + SurfaceView
6. 主题 MaterialComponents -> AppCompat(避免 MaterialComponentsViewInflater multidex 问题)
7. multidex-config.pro 新增 kotlinx.coroutines.** 和 retrofit2.** 到主 dex
8. 新增 Android 4.2 兼容性改动文档
|
2026-07-28 19:47:57 +08:00 |
|
zhaogd
|
eee8203a68
|
fix: 完全移除 androidx.startup InitializationProvider
Android 4.x Dalvik multidex 下,InitializationProvider 启动时尝试加载
secondary dex 中的多个初始化类(ProcessLifecycleInitializer、
EmojiCompatInitializer 等),逐个移除不可靠。
直接用 tools:node="remove" 移除整个 Provider,App 手动初始化所有组件。
精简 multidex-config.pro 仅保留 App 启动类,避免 main dex 方法数超限。
|
2026-07-28 11:36:03 +08:00 |
|
zhaogd
|
2d0c9d4602
|
fix: 修复 Android 4.x Dalvik multidex 导致的 ClassNotFoundException
androidx.startup.InitializationProvider 在 Application 启动时被加载,
但被分配到 secondary dex 导致 Dalvik VM 找不到该类。
通过 multiDexKeepProguard 强制保留在 main dex 中。
|
2026-07-28 11:23:33 +08:00 |
|