Commit 1f7e37b6 authored by tongzifang's avatar tongzifang

add flavor

parent 14445715
...@@ -15,20 +15,28 @@ class OssBuildAndUploadPlugin implements Plugin<Project> { ...@@ -15,20 +15,28 @@ class OssBuildAndUploadPlugin implements Plugin<Project> {
void apply(Project project) { void apply(Project project) {
OssBean ossBean = project.getExtensions().create("BuildAndOssInfo", OssBean.class) OssBean ossBean = project.getExtensions().create("BuildAndOssInfo", OssBean.class)
project.afterEvaluate { project.afterEvaluate {
// AppExtension app = project. // AppExtension app = project.
AppExtension app = project.getExtensions().findByType(AppExtension.class) AppExtension app = project.getExtensions().findByType(AppExtension.class)
app.getApplicationVariants().all(new Action<ApplicationVariant>() { app.getApplicationVariants().all(new Action<ApplicationVariant>() {
@Override @Override
void execute(ApplicationVariant applicationVariant) { void execute(ApplicationVariant applicationVariant) {
def name = applicationVariant.getName() def taskName = applicationVariant.getName()
def buildType = applicationVariant.buildType.name
def flavor = applicationVariant.flavorName
def versionCode = applicationVariant.versionCode
def versionName = applicationVariant.versionName
def appName = applicationVariant.buildType.manifestPlaceholders.get("app_name", "企迈数店")
applicationVariant.outputs.all(new Action<BaseVariantOutput>() { applicationVariant.outputs.all(new Action<BaseVariantOutput>() {
@Override @Override
void execute(BaseVariantOutput baseVariantOutput) { void execute(BaseVariantOutput baseVariantOutput) {
File flie = baseVariantOutput.getOutputFile() File flie = baseVariantOutput.getOutputFile()
def task = project.getTasks().create("buildAndOss" + firstLetterUpper(name), OssUploadTask.class, flie,ossBean.ossPath,firstLetterUpper(name)) def task = project.getTasks().create("buildAndOss" + firstLetterUpper(taskName),
OssUploadTask.class, flie, ossBean.ossPath, buildType, flavor,
versionCode, versionName, appName)
//先编译 //先编译
// task.dependsOn("clean") // task.dependsOn("clean")
task.dependsOn("assemble" + firstLetterUpper(name)) task.dependsOn("assemble" + firstLetterUpper(name))
} }
}) })
......
...@@ -19,15 +19,30 @@ import javax.inject.Inject ...@@ -19,15 +19,30 @@ import javax.inject.Inject
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
class OssUploadTask extends DefaultTask { class OssUploadTask extends DefaultTask {
@OutputFile File file; @OutputFile
@Input String ossPath = "appfile/demo/" File file;
@Input String buildType; @Input
String ossPath = "appfile/demo/"
@Input
String buildType
@Input
String flavor
@Input
int versionCode
@Input
String versionName
@Input
String appName
@Inject @Inject
OssUploadTask(File file, String ossPath,buildType) { OssUploadTask(File file, String ossPath, buildType, flavor, versionCode, versionName, appName) {
this.file = file this.file = file
this.ossPath = ossPath this.ossPath = ossPath
this.buildType = buildType this.buildType = buildType
this.flavor = flavor
this.versionCode = versionCode
this.versionName = versionName
this.appName = appName
setGroup("oss") setGroup("oss")
} }
...@@ -74,7 +89,8 @@ class OssUploadTask extends DefaultTask { ...@@ -74,7 +89,8 @@ class OssUploadTask extends DefaultTask {
//钉钉通知 //钉钉通知
MediaType JSON = MediaType.parse("application/json; charset=utf-8"); MediaType JSON = MediaType.parse("application/json; charset=utf-8");
def gson = new Gson() def gson = new Gson()
def content = "qmshopassitant: 下载地址为: " + "https://files.qmai.cn/" + ossPath + fileName+" 当前环境: "+buildType +" 当前分支: "+getBranch() def content = "$appName: 下载地址为: " + "https://files.qmai.cn/" + ossPath + fileName +
" 当前分支: " + getBranch()+ " 当前环境: " + buildType +" 当前abi: $flavor"
def dingDingdetail = new FsDetailInfoModel(content) def dingDingdetail = new FsDetailInfoModel(content)
def dingdingInfo = new FsInfoModel(dingDingdetail) def dingdingInfo = new FsInfoModel(dingDingdetail)
RequestBody requestBody = RequestBody.create(JSON, gson.toJson(dingdingInfo)) RequestBody requestBody = RequestBody.create(JSON, gson.toJson(dingdingInfo))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment