apk文件转smali文件
先空着
smali文件转dex文件
准备
1.java运行环境
2.smali.jar包
转换
打开cmd使用如下命令进行转换:
java -jar path/smali.jar assemble path/AAA.smali -o path/BBB.dex
path/AAA.smali为要转换的smali文件路径及名称,path/BBB.dex为输出的dex文件路径及名称
注意:
1.smali.jar文件要用绝对路径,不然会报错找不到smali.jar。报错如下:
Error: Unable to access jarfile smali.jar
2.中间不可少assemble关键字,这是2.2版本之后的新语法规则1。缺少assemble会报错,如下:
Exception in thread "main" com.beust.jcommander.MissingCommandException: Expected a command, got -o
at com.beust.jcommander.JCommander.parseValues(JCommander.java:725)
at com.beust.jcommander.JCommander.parse(JCommander.java:304)
at com.beust.jcommander.JCommander.parse(JCommander.java:287)
at org.jf.smali.Main.main(Main.java:87)
dex文件转smali文件
先空着
dex文件转class文件
先空着
class文件转java源代码
懒得写,不急,先空着