Dex、Smali、Class、Java、Jar之间的相互转换

Dex、Smali、Class、Java、Jar之间的相互转换

工具

工具 作用
javac java------>class
ddx class------>dex
baksmali dex------>smali
smali smali------>dex
dex2jar dex------>jar(class的压缩包)
apktool apk------>smali

————————————————

原文链接:https://blog.csdn.net/u012184539/article/details/82905519

安卓源码从编译到运行流程

微信截图_20240321111601

java转class

javac Test.java

class转dex

ddx --dex --output=Test.dex Test.class

dex转smali

java -jar baksmali.jar -o [输出文件夹] dex文件

java -jar baksmali.jar d classes.dex -o class

使用命令 d

smali转dex

java -jar smali.jar -o 目标dex文件 [smali文件夹]

java -jar smali.jar a class -o classes.dex

dex转jar

d2j-dex2jar.bat dex文件

部分工具下载地址

smali、baksmali下载地址

github 搜索 baksmali 项目带源码,除了 jar 文件外,需要另外下载 smali baksmali 文件,不带任何后缀的文件。也就是 jar 必须配合这个文件使用

微信截图_20240321114451

使用时,文件移除版本号使用

Copyright: 采用 知识共享署名4.0 国际许可协议进行许可

Links: https://zwc365.com/2024/03/21/dexsmaliclassjavajar之间的相互转换

Buy me a cup of coffee ☕.