could not decode arsc file的解决办法

Home / Android MrLee 2015-9-29 6359

在反编译APK文件的时候可能会遇到以下问题,在反编译SDK和ADT版本比较新的安卓应时时可能会出现这个错误,Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file。具体错误如下:
D:\apktool>apktool.bat -f d AndroidDemo.apk -o AndroidDemo
I: Using Apktool 2.0.0-Beta9 on AndroidDemo.apk
I: Loading resource table...
Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file
        at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:54)
        at brut.androlib.res.AndrolibResources.getResPackagesFromApk(AndrolibResources.java:604)
        at brut.androlib.res.AndrolibResources.loadMainPkg(AndrolibResources.java:74)
        at brut.androlib.res.AndrolibResources.getResTable(AndrolibResources.java:66)
        at brut.androlib.Androlib.getResTable(Androlib.java:49)
        at brut.androlib.ApkDecoder.decode(ApkDecoder.java:93)
        at brut.apktool.Main.cmdDecode(Main.java:169)
        at brut.apktool.Main.main(Main.java:85)
Caused by: java.io.IOException: Expected: 0x001c0001, got: 0x00000000
        at brut.util.ExtDataInput.skipCheckInt(ExtDataInput.java:48)
        at brut.androlib.res.decoder.StringBlock.read(StringBlock.java:43)
        at brut.androlib.res.decoder.ARSCDecoder.readPackage(ARSCDecoder.java:95)
        at brut.androlib.res.decoder.ARSCDecoder.readTable(ARSCDecoder.java:81)
        at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:49)
        ... 7 more
D:\apktool>apktool.bat -version
2.0.0-Beta9
D:\apktool>apktool.bat -version
2.0.0-RC4
D:\apktool>apktool.bat -f d AndroidDemo.apk -o AndroidDemo
I: Using Apktool 2.0.0-RC4 on AndroidDemo.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: C:\Users\Administrator\apktool\framework\1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...

QQ截图20150929192526


出现这个错误的原因很简单,因为当前的apktool版本比较旧还不能完美支持新的版本发出来的应用。解决办法就是直接去官方下载最新的APKTOOL.JAR文件替换原来的老版本即可。本文提供的版本是2.0.0-RC4是最新的,当然你也可以去GOOGLE看看,当前版本(需要翻墙)。
官方地址:官网下载传送门
下载地址: apktool_2.0.0rc4
刚看了一下谷歌,发现2.0.1已经发布了, 我也放上来吧。apktool_2.0.1.jar  以下是官方更新日期和下载链接。

本文链接:https://www.it72.com/6086.htm

推荐阅读
最新回复 (0)
返回