ClaudiuGeorgiu / Obfuscapk

An automatic obfuscation tool for Android apps that works in a black-box fashion, supports advanced obfuscation features and has a modular architecture easily extensible with new techniques
MIT License
1.09k stars 285 forks source link

rebuild exception #143

Closed Jimmy0806 closed 1 year ago

Jimmy0806 commented 1 year ago

`I: Smaling smali folder into classes.dex... Exception in thread "main" org.jf.util.ExceptionWithContext: Exception occurred while writing code_item for method Lp02abb7ca/pd1efad72/p531e88a4$pe71bacf2;->values()[Lp02abb7ca/pd1efad72/p531e88a4$pe71bacf2; at org.jf.dexlib2.writer.DexWriter.writeDebugAndCodeItems(DexWriter.java:1047) at org.jf.dexlib2.writer.DexWriter.writeTo(DexWriter.java:346) at org.jf.dexlib2.writer.DexWriter.writeTo(DexWriter.java:301) at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:58) at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:37) at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:430) at brut.androlib.Androlib.buildSources(Androlib.java:361) at brut.androlib.Androlib.build(Androlib.java:313) at brut.androlib.Androlib.build(Androlib.java:280) at brut.apktool.Main.cmdBuild(Main.java:255) at brut.apktool.Main.main(Main.java:82) Caused by: org.jf.util.ExceptionWithContext: Error while writing instruction at code offset 0x2 at org.jf.dexlib2.writer.DexWriter.writeCodeItem(DexWriter.java:1320) at org.jf.dexlib2.writer.DexWriter.writeDebugAndCodeItems(DexWriter.java:1043) ... 10 more Caused by: org.jf.util.ExceptionWithContext: Unsigned short value out of range: 65575 at org.jf.dexlib2.writer.DexDataWriter.writeUshort(DexDataWriter.java:116) at org.jf.dexlib2.writer.InstructionWriter.write(InstructionWriter.java:356) at org.jf.dexlib2.writer.DexWriter.writeCodeItem(DexWriter.java:1280) ... 11 more

17/10/2022 19:12:49> [ERROR][obfuscapk.obfuscation][build_obfuscated_apk()] Error during apk building: Command '['D:\android\sdk\build-tools\30.0.3\apktool.BAT', '--frame-path', 'C:\Users\ADMINI~1\AppData\Local\Temp', 'b', '--force-all', 'D:\360MoveData\Users\Administrator\Desktop\apk_obf\obfuscation_working_dir\app-debug', '-o', 'D:\360MoveData\Users\Administrator\Desktop\apk_obf\obfuscation_working_dir\app-debug_obfuscated.apk']' returned non-zero exit status 1.`

when rebuild apk,throw above error, maybe rename class name and rename method name cause out of range 65575, how to resolve this problem?

ClaudiuGeorgiu commented 1 year ago

Same as #19. I don't have a solution, sorry, buy you can try lowering the limit here (e.g., use 60000 instead 64000).