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。