解决OPPO手机在Android studio 环境下安装错误运行失败的问题

崩溃日志重现:

今天遇到个令人烦躁的问题,通过as调试apk时,在OPPO上安装运行会出现apk icon错误label错误,以及不能正常启动的问题。

	2018-12-26 10:44:35.028 6795-6795/cn.xxx.xxx E/AndroidRuntime: FATAL EXCEPTION: main
    Process: cn.xxx.xxx, PID: 6795
    java.lang.RuntimeException: Unable to instantiate application cn.xxx.xxx.OfficeApp: java.lang.ClassNotFoundException: Didn't find class "cn.xxx.xxx.OfficeApp" on path: DexPathList[[zip file "/data/app/cn.xxx.xxx-41VIKDqe9GiEBC_IAUDZvg==/base.apk"],nativeLibraryDirectories=[/data/app/cn.xxx.xxx-41VIKDqe9GiEBC_IAUDZvg==/lib/arm, /data/app/cn.xxx.xxx-41VIKDqe9GiEBC_IAUDZvg==/base.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]]
        at android.app.LoadedApk.makeApplication(LoadedApk.java:1053)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6138)
        at android.app.ActivityThread.-wrap1(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1861)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:183)
        at android.app.ActivityThread.main(ActivityThread.java:7014)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:514)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:888)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "cn.xxx.xxx.OfficeApp" on path: DexPathList[[zip file "/data/app/cn.xxx.xxx-41VIKDqe9GiEBC_IAUDZvg==/base.apk"],nativeLibraryDirectories=[/data/app/cn.xxx.xxx-41VIKDqe9GiEBC_IAUDZvg==/lib/arm, /data/app/cn.xxx.xxx-41VIKDqe9GiEBC_IAUDZvg==/base.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at android.app.Instrumentation.newApplication(Instrumentation.java:1087)
        at android.app.LoadedApk.makeApplication(LoadedApk.java:1047)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6138) 
        at android.app.ActivityThread.-wrap1(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1861) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:183) 
        at android.app.ActivityThread.main(ActivityThread.java:7014) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:514) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:888) 

使用打包的方式进行安装倒是可以正常安装并运行。根据百度的资料勉强尝试了一下关掉Instant Run的方法尝试解决。

好的,这个方法亲测有效。下面附上解决方法。

解决方式:

  • File->Settings->Build,Execution,Deploymen->Instant Run
  • 将选项 Enable Instant Run to hot swap code/resource changes on deploy(deffault enabled) 设置为未选中状态

猜你喜欢

转载自blog.csdn.net/qq_35559358/article/details/85258150