反编译相关工具的介绍和使用

反编译相关工具的介绍和使用

一、 反编译相关工具

1. Apktool

  • 版本: Apktool v2.4.0 Released
  • Download: https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_2.4.0.jar
  • 描述:反编译apk的利器,还可重新打包
  • 作用:最大程度的还原apk中的AndroidManifest.xml文件和res文件 。二次打包。
  • 反编译命令行: java -jar apktool_2.4.0.jar d -f app.apk -o outdir (默认已经安装Java,且配置好环境变量)
    反编译相关工具的介绍和使用
    反编译相关工具的介绍和使用
    反编译相关工具的介绍和使用
  • 重新打包命令行 :java -jar apktool_2.4.0.jar b -f outdir -o complie.apk
    反编译相关工具的介绍和使用

2. Zipalign

  • 路径: 位于Android SDK/build-tools/android-版本/zipalign.exe
  • 描述: zip包对齐的工具,使apk包内未压缩的数据进行有序排列对齐,从而减少APP运行时内存消耗
  • 作用: 避免签名失败
  • 命令行:zipalign -v -p -f 4 infile.apk outfile.apk

反编译相关工具的介绍和使用

3. Keytool

  • 路径: 位于Java JDK/bin/keytool.exe
  • 描述: Keytool 是一个Java 数据证书的管理工具,Keytool 将**(key)和证书(certificates)存在一个称为keystore的文件中。
  • 作用: 生成**库
  • 命令行:keytool -genkeypair -v -alias umi -keyalg RSA -deststoretype pkcs12 -keystore umi.keystore -validity 365 -keypass 123456 -storepass 123456 -dname "CN=umi, OU=umi, O=umi, L=beijing, ST=beijing, C=china"
    反编译相关工具的介绍和使用

4. Apksigner

  • 路径: 位于Android SDK/build-tools/android-版本/lib/apksigner.jar
  • 描述: 默认同时使用V1和V2签名。V2签名方式Android7.0后才推出。
  • 作用: 签名
  • 命令行: java -jar apksigner.jar sign --v2-signing-enabled false --ks umi.keystore --ks-key-alias umi --ks-pass pass:123456 --out complie_align_sign.apk complie_align.apk
    反编译相关工具的介绍和使用