所需工具清單
baksmali-2.2.0.jar
smali-2.2.0.jar
dex2jar-2.0
jd-gui
apktool.jar
反編譯odex步驟
- 反編譯.odex到out文件夾
java -jar baksmali-2.2.0.jar deodex demo.odex -o out
- 打包out文件夾生成class.dex
java -jar smali-2.2.0.jar assemble out -o class.dex
- 反編譯.dex生成class-dex2jar.jar
./d2j-dex2jar.sh class.dex
- 使用jd-gui.exe打開生成的class-dex2jar.jar
反編譯apk步驟
- 反編譯apk
java -jar apktool.jar d demo.apk
使用解壓工具如7zip提取apk中的class.dex文件
反編譯.dex生成class-dex2jar.jar
./d2j-dex2jar.sh class.dex
- 使用jd-gui.exe或jd-gui(ubuntu)打開生成的class-dex2jar.jar
apk重新打包步驟
1.打包生成未簽名apk
java -jar apktool.jar b demo -o demo_unsigned.apk
2.簽名
jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo_unsigned.apk keyname