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

小米安卓11补丁合成失败 parallel dex optimizer file tinker_classN.odex is not exist #1616

Closed chengxushi closed 2 years ago

chengxushi commented 2 years ago

异常类型:补丁合并失败

手机型号:小米Mi 10 Lite Zoom

手机系统版本:Android 11 tinker版本:1.9.9

gradle版本:5.6.4

是否使用热更新SDK: Bugly SDK

系统:Mac

堆栈/日志: 2021-11-15 14:24:21.292 16108-16108/? W/Tinker.TinkerLoader: tryLoadPatchFiles:patch dir not exist:/data/user/0/com.jzg.tg.teacher/tinker 2021-11-15 14:24:21.293 16108-16108/? D/Tinker.DefaultAppLike: onBaseContextAttached: 2021-11-15 14:24:21.293 16108-16108/? I/Tinker.ReflectApp: with app realApplication from manifest applicationName:com.jzg.tg.teacher.TeacherApplication 2021-11-15 14:24:21.296 16108-16108/? I/Tinker.TinkerPatchListener: application maxMemory:256 2021-11-15 14:24:21.298 16108-16108/? W/Tinker.Tinker: tinker patch directory: /data/user/0/com.jzg.tg.teacher/tinker 2021-11-15 14:24:21.299 16108-16108/? I/Tinker.Tinker: try to install tinker, isEnable: true, version: 1.9.9 2021-11-15 14:24:21.299 16108-16108/? I/Tinker.TinkerLoadResult: parseTinkerResult loadCode:-2, process name:com.jzg.tg.teacher, main process:true, systemOTA:false, fingerPrint:Xiaomi/vangogh/vangogh:11/RKQ1.200826.002/V12.5.2.0.RJVCNXM:user/release-keys, oatDir:null, useInterpretMode:false 2021-11-15 14:24:21.299 16108-16108/? W/Tinker.TinkerLoadResult: can't find patch file, is ok, just return 2021-11-15 14:24:21.299 16108-16108/? I/Tinker.DefaultLoadReporter: patch loadReporter onLoadResult: patch load result, path:/data/user/0/com.jzg.tg.teacher/tinker, code: -2, cost: 22ms 2021-11-15 14:24:21.299 16108-16108/? W/Tinker.Tinker: tinker load fail! 2021-11-15 14:24:21.362 16108-16108/? E/Tinker.ReflectApp: replaceApplicationLike delegateClass:class com.tencent.bugly.beta.tinker.TinkerApplicationLike 2021-11-15 14:24:21.364 16108-16108/? I/Tinker.ComponentHotplug: method install() is not invoked, ignore ensuring operations. 2021-11-15 14:24:21.365 16108-16108/? D/Tinker.DefaultAppLike: onCreate 2021-11-15 14:24:21.383 16108-16108/? I/CrashReport: backup java handler: com.tencent.bugly.beta.tinker.TinkerUncaughtExceptionHandler@fc2c5b5 2021-11-15 14:24:21.418 16108-16108/? I/CrashReport: TINKER_ID:teacher-20211106-2.2.0-1.1-base 2021-11-15 14:24:21.418 16108-16108/? I/CrashReport: NEW_TINKER_ID: 2021-11-15 14:24:21.659 16229-16229/? W/Tinker.TinkerLoader: tryLoadPatchFiles:patch dir not exist:/data/user/0/com.jzg.tg.teacher/tinker 2021-11-15 14:24:21.672 16229-16229/? D/Tinker.DefaultAppLike: onBaseContextAttached: 2021-11-15 14:24:21.673 16229-16229/? I/Tinker.ReflectApp: with app realApplication from manifest applicationName:com.jzg.tg.teacher.TeacherApplication 2021-11-15 14:24:21.678 16229-16229/? I/Tinker.TinkerPatchListener: application maxMemory:256 2021-11-15 14:24:21.681 16229-16229/? W/Tinker.Tinker: tinker patch directory: /data/user/0/com.jzg.tg.teacher/tinker 2021-11-15 14:24:21.682 16229-16229/? I/Tinker.Tinker: try to install tinker, isEnable: true, version: 1.9.9 2021-11-15 14:24:21.682 16229-16229/? I/Tinker.TinkerLoadResult: parseTinkerResult loadCode:-2, process name:.pushservice, main process:false, systemOTA:false, fingerPrint:Xiaomi/vangogh/vangogh:11/RKQ1.200826.002/V12.5.2.0.RJVCNXM:user/release-keys, oatDir:null, useInterpretMode:false 2021-11-15 14:24:21.682 16229-16229/? W/Tinker.TinkerLoadResult: can't find patch file, is ok, just return 2021-11-15 14:24:21.682 16229-16229/? I/Tinker.DefaultLoadReporter: patch loadReporter onLoadResult: patch load result, path:/data/user/0/com.jzg.tg.teacher/tinker, code: -2, cost: 16ms 2021-11-15 14:24:21.683 16229-16229/? W/Tinker.Tinker: tinker load fail! 2021-11-15 14:24:21.684 16229-16229/? E/Tinker.ReflectApp: replaceApplicationLike delegateClass:class com.tencent.bugly.beta.tinker.TinkerApplicationLike 2021-11-15 14:24:21.693 16229-16229/? I/Tinker.ComponentHotplug: method install() is not invoked, ignore ensuring operations. 2021-11-15 14:24:21.693 16229-16229/? D/Tinker.DefaultAppLike: onCreate 2021-11-15 14:24:21.774 16229-16229/? I/CrashReport: backup java handler: com.tencent.bugly.beta.tinker.TinkerUncaughtExceptionHandler@3001dcb 2021-11-15 14:24:21.981 16108-16108/? W/Tinker.UpgradePatchRetry: onPatchRetryLoad retry info not exist, just return 2021-11-15 14:24:22.221 16229-16229/? W/Tinker.UpgradePatchRetry: onPatchRetryLoad retry is not main process, just return 2021-11-15 14:24:24.750 16108-16160/? D/CrashReport: app version is: [2.2.0.20211014], [deviceId:null|null|2f7d6c7ee4e67303], channel: [ofo], base tinkerId:[teacher-20211106-2.2.0-1.1-base], patch tinkerId:[], patch version:[] 2021-11-15 14:24:25.026 16108-16108/? D/Tinker.TinkerManager: onDownloadSuccess. 2021-11-15 14:24:25.027 16108-16108/? D/Tinker.TinkerManager: check if has new patch. 2021-11-15 14:24:25.032 16108-16108/? D/Tinker.TinkerManager: has new patch. 2021-11-15 14:24:25.033 16108-16108/? D/Tinker.TinkerManager: starting patch. 2021-11-15 14:24:25.037 16108-16108/? I/Tinker.TinkerPatchListener: receive a patch file: /data/user/0/com.jzg.tg.teacher/app_tmpPatch/tmpPatch.apk, file size:19310 2021-11-15 14:24:25.039 16108-16108/? W/Tinker.UpgradePatchRetry: onPatchListenerCheck retry file is not exist, just return 2021-11-15 14:24:25.040 16108-16108/? I/Tinker.TinkerPatchListener: get platform:null 2021-11-15 14:24:25.040 16108-16108/? I/Tinker.TinkerPatchService: run patch service by job scheduler. 2021-11-15 14:24:25.062 1894-2062/? D/Boost: hostingType=service, hostingName={com.jzg.tg.teacher/com.tencent.tinker.lib.service.TinkerPatchService$JobServiceRunner}, callerPackage=android, isSystem=true, isBoostNeeded=false. 2021-11-15 14:24:25.064 1894-2062/? I/ActivityManager: Start proc 16945:com.jzg.tg.teacher:patch/u0a350 for service {com.jzg.tg.teacher/com.tencent.tinker.lib.service.TinkerPatchService$JobServiceRunner} caller=android 2021-11-15 14:24:25.125 16945-16945/? W/Tinker.TinkerLoader: tryLoadPatchFiles: we don't load patch with :patch process itself, just return 2021-11-15 14:24:25.125 16945-16945/? D/Tinker.DefaultAppLike: onBaseContextAttached: 2021-11-15 14:24:25.127 16945-16945/? I/Tinker.ReflectApp: with app realApplication from manifest applicationName:com.jzg.tg.teacher.TeacherApplication 2021-11-15 14:24:25.131 16945-16945/? I/Tinker.TinkerPatchListener: application maxMemory:256 2021-11-15 14:24:25.132 16945-16945/? W/Tinker.Tinker: tinker patch directory: /data/user/0/com.jzg.tg.teacher/tinker 2021-11-15 14:24:25.132 16945-16945/? I/Tinker.Tinker: try to install tinker, isEnable: true, version: 1.9.9 2021-11-15 14:24:25.133 16945-16945/? I/Tinker.TinkerLoadResult: parseTinkerResult loadCode:-1, process name:com.jzg.tg.teacher:patch, main process:false, systemOTA:false, fingerPrint:Xiaomi/vangogh/vangogh:11/RKQ1.200826.002/V12.5.2.0.RJVCNXM:user/release-keys, oatDir:null, useInterpretMode:false 2021-11-15 14:24:25.133 16945-16945/? W/Tinker.TinkerLoadResult: tinker is disable, just return 2021-11-15 14:24:25.133 16945-16945/? I/Tinker.DefaultLoadReporter: patch loadReporter onLoadResult: patch load result, path:/data/user/0/com.jzg.tg.teacher/tinker, code: -1, cost: 2ms 2021-11-15 14:24:25.133 16945-16945/? W/Tinker.Tinker: tinker load fail! 2021-11-15 14:24:25.133 16945-16945/? E/Tinker.ReflectApp: replaceApplicationLike delegateClass:class com.tencent.bugly.beta.tinker.TinkerApplicationLike 2021-11-15 14:24:25.138 16945-16945/? I/Tinker.ComponentHotplug: method install() is not invoked, ignore ensuring operations. 2021-11-15 14:24:25.138 16945-16945/? D/Tinker.DefaultAppLike: onCreate 2021-11-15 14:24:25.164 16945-16945/? I/CrashReport: backup java handler: com.tencent.bugly.beta.tinker.TinkerUncaughtExceptionHandler@3001dcb 2021-11-15 14:24:25.327 16945-16945/? W/System.err: at com.tencent.bugly.beta.tinker.TinkerPatchReflectApplication.onCreate(BUGLY:189) 2021-11-15 14:24:25.333 16945-16945/? W/System.err: at com.tencent.bugly.beta.tinker.TinkerPatchReflectApplication.onCreate(BUGLY:189) 2021-11-15 14:24:25.354 16945-16945/? W/Tinker.UpgradePatchRetry: onPatchRetryLoad retry is not main process, just return 2021-11-15 14:24:25.362 16945-17046/? I/Tinker.DefaultPatchReporter: patchReporter onPatchServiceStart: patch service start 2021-11-15 14:24:25.408 16945-17046/? W/Tinker.UpgradePatchRetry: try copy file: /data/user/0/com.jzg.tg.teacher/app_tmpPatch/tmpPatch.apk to /data/user/0/com.jzg.tg.teacher/tinker_temp/temp.apk 2021-11-15 14:24:25.458 16945-17046/? I/Tinker.UpgradePatch: UpgradePatch tryPatch:patchMd5:cb5aef4bd4f3e30340a4cabf3e757d84 2021-11-15 14:24:25.460 16945-17046/? W/Tinker.PatchInfo: read property failed, e:java.io.FileNotFoundException: /data/user/0/com.jzg.tg.teacher/tinker/patch.info: open failed: ENOENT (No such file or directory) 2021-11-15 14:24:25.460 16945-17046/? W/Tinker.PatchInfo: read property failed, e:java.io.FileNotFoundException: /data/user/0/com.jzg.tg.teacher/tinker/patch.info: open failed: ENOENT (No such file or directory) 2021-11-15 14:24:25.460 16945-17046/? I/Tinker.UpgradePatch: UpgradePatch tryPatch:patchVersionDirectory:/data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b 2021-11-15 14:24:25.462 16945-17046/? W/Tinker.UpgradePatch: UpgradePatch copy patch file, src file: /data/user/0/com.jzg.tg.teacher/app_tmpPatch/tmpPatch.apk size: 19310, dest file: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/patch-cb5aef4b.apk size:19310 2021-11-15 14:24:30.031 16945-17046/? W/Tinker.DexDiffPatchInternal: success recover dex file: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes3.dex.jar, size: 3633642, use time: 4553 2021-11-15 14:24:30.032 16945-17046/? I/Tinker.DexDiffPatchInternal: try Extracting /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes2.dex.jar 2021-11-15 14:24:30.047 16108-16108/? I/Tinker.TinkerPatchService: check if patch service is running. 2021-11-15 14:24:32.024 16945-17046/? I/Tinker.DexDiffPatchInternal: isExtractionSuccessful: true 2021-11-15 14:24:35.744 16945-17046/? W/Tinker.DexDiffPatchInternal: success recover dex file: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes.dex.jar, size: 3600295, use time: 3601 2021-11-15 14:24:35.744 16945-17046/? I/Tinker.DexDiffPatchInternal: try Extracting /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes4.dex.jar 2021-11-15 14:24:36.283 16945-17046/? I/Tinker.DexDiffPatchInternal: isExtractionSuccessful: true 2021-11-15 14:24:36.323 16945-17046/? I/Tinker.DexDiffPatchInternal: try Extracting /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/test.dex.jar 2021-11-15 14:24:36.325 16945-17046/? I/Tinker.DexDiffPatchInternal: isExtractionSuccessful: true 2021-11-15 14:24:36.789 16945-17046/? I/Tinker.PatchFileUtil: safeDeleteFile, try to delete path: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/test.dex.jar 2021-11-15 14:24:36.790 16945-17046/? I/Tinker.PatchFileUtil: safeDeleteFile, try to delete path: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes3.dex.jar 2021-11-15 14:24:36.791 16945-17046/? I/Tinker.PatchFileUtil: safeDeleteFile, try to delete path: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes2.dex.jar 2021-11-15 14:24:36.793 16945-17046/? I/Tinker.PatchFileUtil: safeDeleteFile, try to delete path: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes4.dex.jar 2021-11-15 14:24:36.793 16945-17046/? I/Tinker.PatchFileUtil: safeDeleteFile, try to delete path: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/classes.dex.jar 2021-11-15 14:24:36.795 16945-17046/? I/Tinker.DexDiffPatchInternal: merge classN dex file /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/tinker_classN.apk, result: true, size: 11906285, use: 470ms 2021-11-15 14:24:36.796 16945-17046/? I/Tinker.DexDiffPatchInternal: legal files to do dexopt: [/data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/tinker_classN.apk] 2021-11-15 14:24:36.796 16945-17046/? D/Tinker.TinkerInternals: getCurrentInstructionSet:arm 2021-11-15 14:24:36.796 16945-17046/? I/Tinker.DexDiffPatchInternal: patch recover, try to optimize dex file count:1, optimizeDexDirectory:/data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/odex/ 2021-11-15 14:24:36.797 16945-17046/? I/Tinker.DexDiffPatchInternal: start to parallel optimize dex /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/tinker_classN.apk, size: 11906285 2021-11-15 14:24:37.639 16945-17046/? I/Tinker.DexDiffPatchInternal: success to parallel optimize dex /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/tinker_classN.apk, opt file:/data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/dex/oat/arm/tinker_classN.odex, opt file size: 0, use time 842 2021-11-15 14:24:37.639 16945-17046/? I/Tinker.DexDiffPatchInternal: recover dex result:true, cost:12177 2021-11-15 14:24:37.640 16945-17046/? W/Tinker.BsDiffPatchInternal: patch recover, library is not contained 2021-11-15 14:24:37.643 16945-17046/? I/Tinker.ResDiffPatchInternal: res dir: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/res/, meta: resArscMd5:c3e5506613b368cec22c3d42f0daca96 arscBaseCrc:2023769379 pattern:r/. pattern:resources.arsc pattern:assets/. pattern:res/.* addedSet:assets/only_use_to_test_tinker_resource.txt modifiedSet:res/layout/album_list_item.xml modifiedSet:res/layout/fragment_media_selection.xml modifiedSet:res/layout/activity_matisse.xml modifiedSet:res/layout/activity_media_preview.xml modifiedSet:res/layout/photo_capture_item.xml modifiedSet:res/layout-v21/activity_matisse.xml modifiedSet:res/layout-v21/activity_media_preview.xml largeModifiedSet:resources.arsc 2021-11-15 14:24:37.733 16945-17046/? W/Tinker.ResDiffPatchInternal: success recover large modify file:/data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/res/res_temp/resources.arsc, file size:1718604, use time:87 2021-11-15 14:24:37.733 16945-17046/? W/Tinker.ResDiffPatchInternal: success recover all large modify and store resources use time:89 2021-11-15 14:24:38.850 16945-17046/? I/Tinker.PatchFileUtil: safeDeleteFile, try to delete path: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/res/res_temp/resources.arsc 2021-11-15 14:24:38.851 16945-17046/? I/Tinker.PatchFileUtil: safeDeleteFile, try to delete path: /data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/res/res_temp 2021-11-15 14:24:38.863 16945-17046/? I/Tinker.ResDiffPatchInternal: final new resource file:/data/user/0/com.jzg.tg.teacher/tinker/patch-cb5aef4b/res/resources.apk, entry count:3370, size:26795924 2021-11-15 14:24:38.863 16945-17046/? I/Tinker.ResDiffPatchInternal: recover resource result:true, cost:1223 2021-11-15 14:24:38.863 16945-17046/? I/Tinker.DexDiffPatchInternal: raw dex count: 5, dex opt dex count: 1, final wait times: 120 2021-11-15 14:24:38.863 16945-17046/? E/Tinker.DexDiffPatchInternal: parallel dex optimizer file tinker_classN.odex is not exist, just wait 1 times 2021-11-15 14:24:48.873 16945-17046/? E/Tinker.DexDiffPatchInternal: parallel dex optimizer file tinker_classN.odex is not exist, just wait 2 times 2021-11-15 14:24:58.916 16945-17046/? E/Tinker.DexDiffPatchInternal: parallel dex optimizer file tinker_classN.odex is not exist, just wait 3 times

小米安卓11上, 补丁下载成功了, 但是合成失败, 上面是下载补丁时, 合成补丁的错误日志

chengxushi commented 2 years ago

解决了, tinker升级到1.9.14.18, tinker-support升级到1.2.1 看Bugly的配置文档要斟酌一下, 那里配置不是最新的