基于 Android 9.0。
许多命令时间一长就记不清了,记录一下。
Android 环境引入的命令
在shell中执行"source build/envsetup.sh"后,Android将增长一些命令到当前环境中。java
-
lunch:选择编译的产品类型,并存储在当前环境中。android
lunch <product_name>-<build_variant>
-
tapas:与 'lunch' 相似,能够指定编译的应用。shell
tapas [<App1> <App2> ...] [arm|x86|mips|arm64|x86_64|mips64] [eng|userdebug|user]
- printconfig:打印当前配置。
- croot:切换到顶层目录
- m:从顶层目录开始编译。
- mm:编译当前目录中的全部模块,但不包含依赖的模块。
-
mmm:编译指定目录的全部模块,但不包含依赖的模块。可使用下述方式限制编译的模块。api
mmm dir/:target1,target2.
- mma:编译当前目录中的全部模块,包含依赖的模块。
- mmma:编译指定目录的全部模块,包含依赖的模块
- provision:对设备进行固件升级,选项将被传递到 fastboot 中。
- cgrep:在当前目录的全部 C/C++ 文件中查找。
- ggrep:在当前目录的全部 Gradle 文件中查找。
- jgrep:在当前目录的全部 Java 文件中查找。
- resgrep:在当前目录的全部 res/*.xml 文件中查找。
- mangrep:在当前目录的全部 AndroidManifest.xml 文件中查找。
- mgrep:在当前目录的全部 Makefiles 文件中查找。
- sepgrep:在当前目录的全部 sepolicy 文件中查找。
- sgrep:在当前目录的全部文件中查找。
- godir:切换到包含指定文件的目录。
make相关命令
make 或 m 后面能够跟随不一样的参数来指定编译目标。服务器
make clean 相关命令
- clean:清除当前配置编译的全部文件,等同于
rm -rf out/<configuration>/
。
- **clean-$(LOCAL_MODULE):清理指定模块的编译结果。
- clean-$(LOCAL_PACKAGE_NAME):清理指定包的编译结果。
- clobber:清除全部输出,等同于
rm -rf out/
。
- dataclean:删除当前配置上data目录的全部文件。
- clean-sdk:清理SDK编译输出。
- installclean:清除与编译类型相关的文件。在切换编译目标是使用该命令能够加快编译。