Apktool CLI参数大全
实用选项
用于实用命令的选项(apktool {options})
-
--advance(-advance)显示高级使用输出。
-
--version(-version)输出当前软件版本。 (例如:1.5.2)
解码选项
用于解码命令的选项(apktool d file.apk {options})
-
--api-level <API>(-api <API>)设置生成的smali文件中使用的API级别。默认为targetSdkVersion。
-
--no-debug-info(-b)防止baksmali写出调试信息(.local、.param、.line等)。
-
--force(-f)强制删除目标目录。
-
--force-manifest强制Apktool解码AndroidManifest.xml,而不考虑解码选项。
-
--keep-broken-res如果出现错误并且某些资源被丢弃,但仍要解码它们,请使用此选项。例如:检测到无效的配置标志。删除资源。您需要在构建之前手动修复它们。
-
--match-original(-m)尽可能与原始文件匹配生成的文件。可能会阻止重新构建。
-
--no-assets防止解码/复制未知的资产文件。
-
--only-main-classes仅反汇编位于应用程序根目录的dex类。
-
--frame-path <DIR>(-p <DIR>)设置存储/读取框架文件的文件夹。
-
--no-res(-r)防止反编译资源。保持resources.arsc完整。
-
--resource-mode <mode>(-resm, --resource-mode <mode>)设置解析资源时使用的模式。
remove(默认) - 删除无法解析的资源。dummy- 为无法解析的资源添加虚拟资源。keep- 使用APKTOOL_MISSING_{resId}命名法保留未解析的资源。
-
--no-src(-s)防止反汇编dex文件。保持dex文件不变并在构建时移动它们。
-
--frame-tag <TAG>(-t, --frame-tag <TAG>)使用由TAG标记的框架文件。
构建选项
用于构建命令的选项(apktool b folder {options})
-
--aapt <FILE>(-a)从指定位置加载aapt/aapt2二进制文件。这些将代替内部版本使用。
-
--api-level <API>(-api <API>)设置要构建的smali文件的API级别。默认为minSdkVersion。
-
--copy-original(-c)复制原始的AndroidManifest.xml和META-INF。
-
--debug(-d)将debuggable="true"添加到AndroidManifest.xml。
-
--force-all(-f)在构建过程中覆盖现有文件。包括资源和源代码。
-
--net-sec-conf(-n)在apk中添加一个通用的网络安全配置文件。
-
--no-crunch(-nc)在构建过程中禁用资源文件的压缩。这将防止aapt/aapt2进行自动位图优化。
-
--output <FILE>(-o)设置输出apk的名称。默认为dist/{apkname}.apk。
-
--frame-path <DIR>(-p <DIR>)设置存储/读取框架文件的文件夹。
-
--use-aapt1使用aapt而不是aapt2。在Apktool v2.9.0及以上版本中,默认使用aapt2。
-
--use-aapt2使用aapt2而不是aapt。在Apktool v2.8.2及以下版本中,默认使用aapt。