依存関係があるアプリの実行中にエラーが発生する'androidx.lifecycle:lifecycle-extensions:2.1.0-alpha03'
および'androidx.lifecycle:lifecycle-viewmodel:2.1.0-alpha03'
Android 4.4。
Android 6のデバイスで正常に動作します
エラーでアプリがクラッシュする
Java.lang.RuntimeException: Unable to get provider androidx.lifecycle.ProcessLifecycleOwnerInitializer: Java.lang.ClassNotFoundException: Didn't find class "androidx.lifecycle.ProcessLifecycleOwnerInitializer" on path: DexPathList[[Zip file "/data/app/**********.apk"],nativeLibraryDirectories=[/data/app-lib/***********, /vendor/lib, /system/lib]]
at Android.app.ActivityThread.installProvider(ActivityThread.Java:5052)
at Android.app.ActivityThread.installContentProviders(ActivityThread.Java:4623)
at Android.app.ActivityThread.handleBindApplication(ActivityThread.Java:4563)
at Android.app.ActivityThread.access$1500(ActivityThread.Java:151)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1402)
at Android.os.Handler.dispatchMessage(Handler.Java:110)
at Android.os.Looper.loop(Looper.Java:193)
at Android.app.ActivityThread.main(ActivityThread.Java:5333)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:515)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:824)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:640)
at dalvik.system.NativeStart.main(Native Method)
Caused by: Java.lang.ClassNotFoundException: Didn't find class "androidx.lifecycle.ProcessLifecycleOwnerInitializer" on path: DexPathList[[Zip file "/data/app/**********.apk"],nativeLibraryDirectories=[/data/app-lib/********, /vendor/lib, /system/lib]]
私の場合、どういうわけかAndroidアーキテクチャライフサイクルファイルがAndroid Bundle on Pie(Android9)で省略されます)なので、私が追加したのはproguard-rules.pro
AndroidXの場合:
-keep class androidx.lifecycle.** {*;}
サポートのための :
-keep class Android.Arch.lifecycle.** {*;}
Multidexの公式ドキュメント here をご覧ください。このリンクを使用して、最新のmultidex gradle依存バージョンを確認してください。
androidXを使用している場合
dependencies {
def multidex_version = "2.0.1" // Check this from the link
implementation 'androidx.multidex:multidex:$multidex_version'
}
それ以外の場合
dependencies {
implementation 'com.Android.support:multidex:1.0.3'
}