Android Tasks
最后更新于:2022-04-01 02:24:52
# Android Tasks
Android plugin 使用相同的约定以兼容其他插件,并且附加了标志性的 task,包括:
- **assemble** 组合项目所有输出
- **check** 执行所有检查
- **connectedCheck** 在一个连接的设备或者模拟器上执行检查,它们可以在所有连接的设备上并行执行检查
- **deviceCheck** 通过 APIs 连接远程设备来执行检查,主要用于 CI(Continuos integration ,持续集成)服务上。
- **build** 执行 assemble 和 check 的所有工作
- **clean** 清空项目的输出
这些新的标志性 task 是必须的,以保证能够在没有设备连接的情况下执行定期检查。 注意 **build** task 不依赖于 **deviceCheck** 或者 **connectedCheck**。
一个 Android 项目至少拥有两个输出:debug APK 和 release APK。每个输出都有各自的标志性 task 以便能够单独构建它们。
- **assemble**
- **assembleDebug**
- **assembleRelease**
它们都依赖于其它一些 tasks 以完成构建一个APK所需的多个步骤。其中 **assemble** task 依赖于上述两个 task,所以执行 **assemble** 将会同时构建出两个 APK。
> 提示: Gradle 在命令行上支持驼峰命名法的 task 简称,例如,执行
~~~
gralde aR
~~~
> 等同与输入
~~~
gradle assembleRelease
~~~
> 只要没有其它命令匹配 `aR`
> 译者注:assR 同样能运行 assembleRelease task,即简称不一定要是首字母缩写 `_(:зゝ∠)_`
check task 也有拥有依赖:
- **check**
- **lint**
- **connectedCheck**
- **connectedAndroidTest**
- **connectedUiAutomatorTest**(尚未实现)
- **deviceCheck**
- 进行测试时才会触发
最后,插件为所有的构建类型(**debug, release, test**)创建了 `install/uninstall` task,只要它们是可以被安装的(需要签名过的)。