Analyze old and new apk files:
old apk: E6_old_1.apk, size=18327132, md5=22c0398c1ac9d67c88bda61459ed40b6
new apk: E6_old_2.apk, size=18327135, md5=5783cc6575a0139c02365f81e46e7094
Manifest was changed, while there's no any new components added. Make sure if such changes were all you expected.
UnZipping apk to D:\buildSdk\build\new_apk\E6_old_1
UnZipping apk to D:\buildSdk\build\new_apk\E6_old_2
found modify resource: AndroidManifest.xml, but it is AndroidManifest.xml, just ignore!
Check for loader classes in dex: classes.dex
Gen classes.dex patch file:D:\buildSdk\build\new_apk\tinker_result\classes.dex, size:656, md5:8c5ca89faaef394cc9c85584118d98c6
Verifying if patched new dex is logically the same as original new dex: E6_old_2/classes.dex ...
Gen classes.dex for dalvik full dex file:D:\buildSdk\build\new_apk\tempPatchedDexes\classes.dex, size:7702296, md5:22484282cfd73bded332850b4a349e90
DexDecoder:write meta file data: classes.dex,,22484282cfd73bded332850b4a349e90,22484282cfd73bded332850b4a349e90,8c5ca89faaef394cc9c85584118d98c6,3370757797,4096928198,jar
java.lang.NullPointerException
at com.tencent.tinker.build.decoder.DexDiffDecoder.addTestDex(DexDiffDecoder.java:503)
at com.tencent.tinker.build.decoder.DexDiffDecoder.onAllPatchesEnd(DexDiffDecoder.java:201)
at com.tencent.tinker.build.decoder.ApkDecoder.patch(ApkDecoder.java:123)
at com.tencent.tinker.build.patch.Runner.tinkerPatch(Runner.java:65)
at com.tencent.tinker.patch.CliMain.run(CliMain.java:106)
at com.tencent.tinker.patch.CliMain.main(CliMain.java:54)
异常类型:编译异常
手机型号:
手机系统版本:Android4.4.4
tinker版本:如:1.7.7
gradle版本:如:2.10
是否使用热更新SDK: TinkerPatch SDK
系统:windows10
堆栈/日志:
D:\buildSdk\build>java -jar tinker-patch-cli-1.9.12.jar -old E6_old_1.apk -new E6_old_2.apk -config tinker_config.xml -out new_apk special configFile file path:D:\buildSdk\build\tinker_config.xml special output directory path: D:\buildSdk\build\new_apk reading config file, D:\buildSdk\build\tinker_config.xml -----------------------Tinker patch begin----------------------- configuration: oldApk:D:\buildSdk\build\E6_old_1.apk newApk:D:\buildSdk\build\E6_old_2.apk outputFolder:D:\buildSdk\build\new_apk isIgnoreWarning:false isProtectedApp:false 7-ZipPath:7za useSignAPk:true package meta fields: filed name:patchMessage, filed value:classes.dex filed name:platform, filed value:all dex configs: dexMode: jar dexPattern:assets/secondary-dex-..jar dexPattern:classes..dex dex loader:com.tencent.tinker.loader. dex loader:tinker.sample.android.SampleApplication lib configs: libPattern:lib/./..so resource configs: resPattern:res/. resPattern:assets/. resPattern:AndroidManifest.xml resPattern:resources.arsc resIgnore change:assets/sample_meta.txt largeModSize:100kb useApplyResource:false
Analyze old and new apk files: old apk: E6_old_1.apk, size=18327132, md5=22c0398c1ac9d67c88bda61459ed40b6 new apk: E6_old_2.apk, size=18327135, md5=5783cc6575a0139c02365f81e46e7094
Manifest was changed, while there's no any new components added. Make sure if such changes were all you expected.
UnZipping apk to D:\buildSdk\build\new_apk\E6_old_1 UnZipping apk to D:\buildSdk\build\new_apk\E6_old_2 found modify resource: AndroidManifest.xml, but it is AndroidManifest.xml, just ignore! Check for loader classes in dex: classes.dex
Gen classes.dex patch file:D:\buildSdk\build\new_apk\tinker_result\classes.dex, size:656, md5:8c5ca89faaef394cc9c85584118d98c6 Verifying if patched new dex is logically the same as original new dex: E6_old_2/classes.dex ...
Gen classes.dex for dalvik full dex file:D:\buildSdk\build\new_apk\tempPatchedDexes\classes.dex, size:7702296, md5:22484282cfd73bded332850b4a349e90 DexDecoder:write meta file data: classes.dex,,22484282cfd73bded332850b4a349e90,22484282cfd73bded332850b4a349e90,8c5ca89faaef394cc9c85584118d98c6,3370757797,4096928198,jar java.lang.NullPointerException at com.tencent.tinker.build.decoder.DexDiffDecoder.addTestDex(DexDiffDecoder.java:503) at com.tencent.tinker.build.decoder.DexDiffDecoder.onAllPatchesEnd(DexDiffDecoder.java:201) at com.tencent.tinker.build.decoder.ApkDecoder.patch(ApkDecoder.java:123) at com.tencent.tinker.build.patch.Runner.tinkerPatch(Runner.java:65) at com.tencent.tinker.patch.CliMain.run(CliMain.java:106) at com.tencent.tinker.patch.CliMain.main(CliMain.java:54)
Usage: java -jar tinker.jar -old old.apk -new new.apk -config tinker_config.xml -out output_path others please contact us