之前都是好好的,能打包,能運作,今天換了個手機進行安裝包測試,結果安裝成功了,但是一打開app就crash。
一看錯誤是
Process: 包名, PID: 12712
java.lang.RuntimeException: Unable to instantiate application 包名.App: java.lang.ClassNotFoundException:
Didn't find class "包名.App" on path: DexPathList[[zip file "/data/app/包名-1/base.apk"],
nativeLibraryDirectories=[/data/app/包名-1/lib/arm64, /system/fake-libs64, /data/app/包名-1/base.apk!/lib/arm64-v8a,
/system/lib64, /vendor/lib64]]
at android.app.LoadedApk.makeApplication(LoadedApk.java:853)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5681)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1685)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:185)
at android.app.ActivityThread.main(ActivityThread.java:6493)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:916)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:806)
Caused by: java.lang.ClassNotFoundException: Didn't find class "包名.App" on path:
DexPathList[[zip file "/data/app/包名-1/base.apk"],
nativeLibraryDirectories=[/data/app/包名-1/lib/arm64, /system/fake-libs64, /data/app/包名-1/base.apk!/lib/arm64-v8a,
/system/lib64, /vendor/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.app.Instrumentation.newApplication(Instrumentation.java:993)
at android.app.LoadedApk.makeApplication(LoadedApk.java:847)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5681)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1685)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:185)
at android.app.ActivityThread.main(ActivityThread.java:6493)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:916)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:806)
如果你也碰到這種錯誤,别慌,之前有大嬸遇到過,也給出了解決方法,如果你之前都沒問題,換個手機就crash,那麼十有八九是你開啟了androidStudio的Instant Run,那麼直接禁用就好。
這裡有一位大嬸總結的很好
檢視原文