Tencent / tinker

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

补丁后部分机型闪退 #1613

Closed Aracoix closed 2 years ago

Aracoix commented 2 years ago

Issue/提问须知

在提交issue之前,我们应该先查询是否已经有相关的issue以及常见问题。提交issue时,我们需要写明issue的原因,以及编译或运行过程的日志(加载进程以及Patch进程)。issue需要以下面的格式:

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'Xiaomi/equuleus/equuleus:10/QKQ1.190828.002/V12.5.1.0.QECCNXM:user/release-keys'
Revision: '0'
ABI: 'arm64'
Timestamp: 2021-11-04 18:40:34+0800
pid: 4038, tid: 4038, name: .dejiplaza.deji  >>> com.dejiplaza.deji <<<
uid: 10679
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'Inlined method resolution crossed dex file boundary: from void kotlinx.coroutines.channels.AbstractChannel.<init>(kotlin.jvm.functions.Function1) in /data/app/com.dejiplaza.deji-Gpp2mtBGLtA9mB5XrPKaAw==/base.apk!classes5.dex/0x7b1accc6a0 to void kotlinx.coroutines.channels.AbstractSendChannel.<init>(kotlin.jvm.functions.Function1) in /data/user/0/com.dejiplaza.deji/tinker/patch-de87d72a/dex/tinker_classN.apk!classes2.dex/0x7b1ac956c0. This must be due to duplicate classes or playing wrongly with class loaders. The runtime is in an unsafe state.'
    x0  0000000000000000  x1  0000000000000fc6  x2  0000000000000006  x3  0000007a8c21be80
    x4  feff6b6b686a5e63  x5  feff6b6b686a5e63  x6  feff6b6b686a5e63  x7  7f7f7f7f7f7f7f7f
    x8  00000000000000f0  x9  2ac45575983d0f40  x10 0000000000000001  x11 0000000000000000
    x12 fffffff0fffffbdf  x13 000000006183b8a1  x14 00039d767d071525  x15 0000c03f4a941a5b
    x16 0000007b9f3a3738  x17 0000007b9f382180  x18 0000000000000002  x19 0000000000000fc6
    x20 0000000000000fc6  x21 00000000ffffffff  x22 0000000000000000  x23 0000007b19d423ce
    x24 0000007b19d22467  x25 0000007b1a25f000  x26 0000007b19bbd258  x27 0000007b1a25f000
    x28 0000000000000043  x29 0000007a8c21bf20
    sp  0000007a8c21be60  lr  0000007b9f33386c  pc  0000007b9f333898

backtrace:
      #00 pc 0000000000073898  /apex/com.android.runtime/lib64/bionic/libc.so (abort+160) (BuildId: f6cc5d2d702265511937b56460b37693)
      #01 pc 00000000000d75ec  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_internal_find(long, char const*)+192) (BuildId: f6cc5d2d702265511937b56460b37693)
      #02 pc 00000000000d750c  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_internal_gettid(long, char const*)+8) (BuildId: f6cc5d2d702265511937b56460b37693)
      #03 pc 00000000000d79d0  /apex/com.android.runtime/lib64/bionic/libc.so (pthread_kill+48) (BuildId: f6cc5d2d702265511937b56460b37693)
      #04 pc 0000000000000680  [vdso] (__kernel_rt_sigreturn)
      #05 pc 0000000000073894  /apex/com.android.runtime/lib64/bionic/libc.so (abort+156) (BuildId: f6cc5d2d702265511937b56460b37693)
      #06 pc 00000000004b9650  /apex/com.android.runtime/lib64/libart.so (art::Runtime::Abort(char const*)+2280) (BuildId: 03574df7f7eb01baf6baa6348024974c)
      #07 pc 000000000000b458  /system/lib64/libbase.so (android::base::LogMessage::~LogMessage()+580) (BuildId: e71ff76c9d3a6b93309ae5824b646459)
      #08 pc 00000000004de028  /apex/com.android.runtime/lib64/libart.so (art::GetResolvedMethod(art::ArtMethod*, art::CodeInfo const&, art::BitTableRange<art::InlineInfo> const&)+1088) (BuildId: 03574df7f7eb01baf6baa6348024974c)
      #09 pc 00000000004dcae8  /apex/com.android.runtime/lib64/libart.so (art::StackVisitor::GetMethod() const+156) (BuildId: 03574df7f7eb01baf6baa6348024974c)
      #10 pc 0000000000509ad0  /apex/com.android.runtime/lib64/libart.so (_ZZN3art12StackVisitor9WalkStackILNS0_16CountTransitionsE0EZNKS_6Thread16GetCurrentMethodEPjbbE4$_76EEvRKT0_PS3_PNS_7ContextENS0_13StackWalkKindEbbEN18LambdaStackVisitor10VisitFrameEv$ba4faf6e55ac4ef4761f78a56258779c+16) (BuildId: 03574df7f7eb01baf6baa6348024974c)
      #11 pc 00000000004db884  /apex/com.android.runtime/lib64/libart.so (_ZN3art12StackVisitor9WalkStackILNS0_16CountTransitionsE0EEEvb+412) (BuildId: 03574df7f7eb01baf6baa6348024974c)
      #12 pc 00000000004fd7b0  /apex/com.android.runtime/lib64/libart.so (art::Thread::GetCurrentMethod(unsigned int*, bool, bool) const+256) (BuildId: 03574df7f7eb01baf6baa6348024974c)
      #13 pc 0000000000381f60  /apex/com.android.runtime/lib64/libart.so (art::JNI::FindClass(_JNIEnv*, char const*)+1052) (BuildId: 03574df7f7eb01baf6baa6348024974c)
      #14 pc 000000000000da34  /data/app/com.dejiplaza.deji-Gpp2mtBGLtA9mB5XrPKaAw==/lib/arm64/libBugly.so (getJavaThread+124) (BuildId: ba27b0b5712dc7675d0815727e1b4b2fdae2f9ad)
      #15 pc 000000000000dd04  /data/app/com.dejiplaza.deji-Gpp2mtBGLtA9mB5XrPKaAw==/lib/arm64/libBugly.so (getJavaThreadStack+52) (BuildId: ba27b0b5712dc7675d0815727e1b4b2fdae2f9ad)
      #16 pc 00000000000055f8  /data/app/com.dejiplaza.deji-Gpp2mtBGLtA9mB5XrPKaAw==/lib/arm64/libBugly.so (BuildId: ba27b0b5712dc7675d0815727e1b4b2fdae2f9ad)
      #17 pc 0000000000006db8  /data/app/com.dejiplaza.deji-Gpp2mtBGLtA9mB5XrPKaAw==/lib/arm64/libBugly.so (BuildId: ba27b0b5712dc7675d0815727e1b4b2fdae2f9ad)
      #18 pc 0000000000000680  [vdso] (__kernel_rt_sigreturn)
      #19 pc 0000000000073894  /apex/com.android.runtime/lib64/bionic/libc.so (abort+156) (BuildId: f6cc5d2d702265511937b56460b37693)
      #20 pc 00000000004b9650  /apex
异常类型:app运行时异常

手机型号:如:MI 8 UD

手机系统版本:Android 10

tinker版本:1.9.14.3

gradle版本:5.6.4 
com.android.tools.build:gradle:3.6.4

是否使用热更新SDK: Bugly SDK 1.2.1

系统:Mac

提问题时若使用不能用/没效果/有问题/报错此类模糊表达,但又没给出任何代码截图报错的,将绝对不会有任何反馈。这种issue也是一律直接关闭的,大家可以参阅提问的智慧

Tinker是一个开源项目,希望大家遇到问题时要学会先思考,看看sample与Tinker的源码,更鼓励大家给我们提pr.

huangyin1109 commented 2 years ago

你好,我也遇到了这个问题,请问你们解决了吗

Aracoix commented 2 years ago

可能是R8 混淆导致的,把R8混淆关闭后试了没出现过了