本系列代码地址 githubgit
相关资料 gradle in action中英文对照版github
回到目录工具
上一边咱们介绍task的相关内容,今天咱们接着完善咱们的打包工具。post
不失通常性的,咱们以“publishReleaseRelease”这个任务为例,其余三个任务的逻辑和这个任务逻辑是同样的,只是参数不一样。gradle
当咱们要执行apk的上传功能以前,首先咱们须要确保apk编译出来。那打包的task是哪个呢?咱们在gradle面板下找一下,发现,打包的任务是“assembleRelease”这个task。spa
也就是说,咱们上传的任务是依赖“assembleRelease”这个task的。任务的依赖关系咱们能够经过“dependsOn”这个任务来指定,以下:code
task publishReleaseRelease(dependsOn: "assembleRelease") {
group "publish"
doFirst {
println "publishReleaseRelease doFirst called......"
}
doLast {
println "publishReleaseRelease doLast called......"
}
}
复制代码
而且咱们还在任务里面加入了两个action,一个经过“doFirst”添加,一个经过“doLast”添加。当咱们再执行这个任务的时候,发现他先执行了"assembleRelease"这个任务,而后才开始执行咱们的“publishReleaseRelease”这个任务,而且先执行的“doFirst”对应的action,人后执行的“doLast”的action。执行结果以下:cdn