在模拟器上运行的应用程序上的java.lang.ClassNotFoundException

时间:2017-08-22 23:30:22

标签: android gradle android-build

我的应用程序在模拟器上运行良好,但是在使用apk在真实设备上安装应用程序后出现此错误。

FATAL EXCEPTION: main
Process: com.example.wiserlab.macquest, PID: 9151
java.lang.RuntimeException: Unable to get provider com.example.wiserlab.macquest.model.CustomContentProvider: java.lang.ClassNotFoundException: Didn't find class "com.example.wiserlab.macquest.model.CustomContentProvider" on path: DexPathList[[zip file "/data/app/com.example.wiserlab.macquest-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.wiserlab.macquest-1, /vendor/lib, /system/lib]]
        at android.app.ActivityThread.installProvider(ActivityThread.java:4777)
        at android.app.ActivityThread.installContentProviders(ActivityThread.java:4369)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4309)
        at android.app.ActivityThread.access$1500(ActivityThread.java:135)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5001)
        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:785)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
        at dalvik.system.NativeStart.main(Native Method)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.wiserlab.macquest.model.CustomContentProvider" on path: DexPathList[[zip file "/data/app/com.example.wiserlab.macquest-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.wiserlab.macquest-1, /vendor/lib, /system/lib]]

我确信该课程存在。我应该在其他地方导入该课程吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

如果您启用了proguard,那么您的代码可能会被篡改,而崩溃则是关于使用像Gson这样的反射的一些功能。

检查模拟器中的构建类型是否与实际设备相同(在调试中)。您也可以尝试在BuildType设置中设置useProguard false

答案 1 :(得分:0)

通过删除构建文件夹并重新构建来解决问题。