Tencent / tinker

Tinker is a hot-fix solution library for Android, it supports dex, library and resources update without reinstall apk.
Other
17.14k stars 3.33k forks source link

补丁加载成功后重启闪退问题 #1185

Open zhoushuangli opened 5 years ago

zhoushuangli commented 5 years ago

异常类型:app运行时异常

手机型号:如:华为,小米,OPPO 等 手机系统版本:如:Android 8.0 ,Android9.0 tinker版本:如:1.9.9

gradle版本:如:3.4.1 是否使用热更新SDK: Bugly SDK

系统:如:Window

堆栈/日志: 2019-08-12 11:51:03.308 26080-26080/? E/Tinker.UncaughtHandler: TinkerUncaughtHandler catch exception:java.lang.VerifyError: Verifier rejected class com.wisdom.patient.base.HomeActivity: void com.wisdom.patient.base.HomeActivity.h() failed to verify: void com.wisdom.patient.base.HomeActivity.h(): [0x24] 'this' argument 'Reference: com.wisdom.patient.bean.UserInFoBean' not instance of 'Reference: com.wisdom.patient.bean.UserInFoBean' (declaration of 'com.wisdom.patient.base.HomeActivity' appears in /data/user/0/com.wisdom.patient/tinker/patch-25d58e87/dex/tinker_classN.apk!classes2.dex)

Liar1995 commented 5 years ago

@zhoushuangli 你用bugly集成的tinker,怎么使用的tinker 1.9.9版本?

zhoushuangli commented 5 years ago

我是用的 classpath "com.tencent.bugly:tinker-support:1.1.5"

//compile 'com.tencent.bugly:crashreport_upgrade:1.3.8' implementation 'com.tencent.bugly:crashreport_upgrade:latest.release'

//1. 指定tinker依赖版本(注:应用升级1.3.5版本起,不再内置tinker)

//2.为了便于解答问题,这里的tinker版本建议跟随此处demo设置,如果微信更新了tinker版本,bugly会定期同步更新 implementation 'com.tencent.tinker:tinker-android-lib:1.9.9'我的配置就是这样,现在启动不起来,大神。帮我看下

------------------ 原始邮件 ------------------ 发件人: "SUMMER ."notifications@github.com; 发送时间: 2019年8月14日(星期三) 下午2:23 收件人: "Tencent/tinker"tinker@noreply.github.com; 抄送: "蛋蛋"554707615@qq.com;"Mention"mention@noreply.github.com; 主题: Re: [Tencent/tinker] 补丁加载成功后重启闪退问题 (#1185)

@zhoushuangli 你用bugly集成的tinker,怎么使用的tinker 1.9.9版本?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

Liar1995 commented 5 years ago

classpath "com.tencent.bugly:tinker-support:1.1.5" implementation 'com.tencent.tinker:tinker-android-lib:1.9.6'

降到这个版本试试

zhoushuangli commented 5 years ago

我已经修改了,但是现在打的基本版直接报错

2019-08-14 14:45:35.182 4895-4895/? E/LoadedApk: Unable to instantiate appComponentFactory java.lang.ClassNotFoundException: Didn't find class "android.support.v4.app.CoreComponentFactory" on path: DexPathList[[zip file "/data/app/com.wisdom.patient-GmCG44QJ7aXh3iMnMiKFkA==/base.apk"],nativeLibraryDirectories=[/data/app/com.wisdom.patient-GmCG44QJ7aXh3iMnMiKFkA==/lib/arm, /data/app/com.wisdom.patient-GmCG44QJ7aXh3iMnMiKFkA==/base.apk!/lib/armeabi-v7a, /system/lib, /product/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at android.app.LoadedApk.createAppFactory(LoadedApk.java:251) at android.app.LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:792) at android.app.LoadedApk.getClassLoader(LoadedApk.java:871) at android.app.LoadedApk.getResources(LoadedApk.java:1122) at android.app.ContextImpl.createAppContext(ContextImpl.java:2619) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6514) at android.app.ActivityThread.access$2000(ActivityThread.java:268) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1995) at android.os.Handler.dispatchMessage(Handler.java:109) at android.os.Looper.loop(Looper.java:207) at android.app.ActivityThread.main(ActivityThread.java:7539) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:958) 2019-08-14 14:45:35.234 4895-4895/? E/AndroidRuntime: FATAL EXCEPTION: main Process: com.wisdom.patient, PID: 4895 java.lang.NoClassDefFoundError: Failed resolution of: Lcom/tencent/tinker/entry/ApplicationLike;

------------------ 原始邮件 ------------------ 发件人: "SUMMER ."notifications@github.com; 发送时间: 2019年8月14日(星期三) 下午2:31 收件人: "Tencent/tinker"tinker@noreply.github.com; 抄送: "蛋蛋"554707615@qq.com;"Mention"mention@noreply.github.com; 主题: Re: [Tencent/tinker] 补丁加载成功后重启闪退问题 (#1185)

classpath "com.tencent.bugly:tinker-support:1.1.5" implementation 'com.tencent.tinker:tinker-android-lib:1.9.6'

降到这个版本试试

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

niemj commented 4 years ago

请问这个问题:Unable to instantiate appComponentFactory java.lang.ClassNotFoundException: Didn't find class "android.support.v4.app.CoreComponentFactory" on path: DexPathList[[zip file "/data/app/com.wisdom.patient-.......修复了么?是tinker的问题么?