我已将我的应用迁移到AndroidX。如果禁用proguard,一切正常。如果启用proguard,则该应用程序可以成功构建,但是在打开应用程序时崩溃。
由于:java.lang.NullPointerException:尝试调用虚拟 空对象引用上的方法'int java.lang.String.length()' 在com.app.example.utils.da.a(未知来源:15) 在com.app.exampler.utils.da.b(未知来源:10) 在com.app.example.utils.da.a(未知来源:9) 在com.app.example.base.MyApplication.onCreate(未知来源:2) 在android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1162) 在android.app.ActivityThread.handleBindApplication(ActivityThread.java:6636) 在android.app.ActivityThread.access $ 2000(ActivityThread.java:268) 在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1995) 在android.os.Handler.dispatchMessage(Handler.java:109) 在android.os.Looper.loop(Looper.java:207) 在android.app.ActivityThread.main(ActivityThread.java:7539) 在java.lang.reflect.Method.invoke(本机方法) 在com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run(RuntimeInit.java:524) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:958) 2019-07-25 07:14:46.903 1437-1437 /? E / LoadedApk:无法实例化 appComponentFactory java.lang.ClassNotFoundException:在路径:DexPathList [[]
上找不到类“ androidx.core.app.CoreComponentFactory”
我在下面尝试了一些解决方案,但没有帮助。
proguard-rules.pro
-keep类androidx.core.app.CoreComponentFactory {*; }
manifest.xml
tools:replace =“ android:appComponentFactory”
android:appComponentFactory =“ whatevestring”
有人遇到像我一样的问题吗?以及如何解决?谢谢。
答案 0 :(得分:2)
启用proguard后,我遇到了同样的问题。就我而言,问题是通过清理项目而解决的。尝试在清洁后运行该应用程序。
Android Studio->构建->清理项目
无需在清单文件中添加其他proguard规则或其他任何内容。
希望有帮助!