执行d2j-dex2jar转换APK源码时遇DexException版本不支持问题
解决dex2jar报错"com.googlecode.d2j.DexException: not support version"的问题
兄弟,我之前也踩过这个坑!这个报错本质就是你用的dex2jar版本太老旧,不支持当前APK里DEX文件的版本——毕竟Android一直在更新,新系统对应的DEX格式也会升级,旧工具自然跟不上。
给你几个靠谱的解决办法:
升级dex2jar到最新版本
先把你现在用的旧版dex2jar删掉,找官方渠道发布的最新稳定发行版(优先选近1-2年的版本,别用那种好几年前的老旧包)。替换完成后,重新执行命令:./d2j-dex2jar.sh classes.dex基本就能解决版本不兼容的问题。
换用更适配的工具:jadx
如果升级dex2jar还是不行,或者嫌转换步骤麻烦,直接用jadx更香!它对高版本DEX的支持比dex2jar好很多,不需要先转成jar包,直接把APK拖进jadx就能直接查看源码,操作更省心。先确认DEX版本(可选)
你可以先看看这个APK对应的Android版本,用aapt命令查一下:aapt dump badging your_app.apk从输出里找
android:targetSdkVersion,比如targetSdkVersion=33对应Android 13,对应的DEX版本是35,旧版dex2jar大多不支持34以上的DEX版本,这样你也能更清楚为啥报错。
内容的提问来源于stack exchange,提问作者anandhu
相关产品推荐
相关产品推荐

