Commit 8126cfb1 authored by 刘明明's avatar 刘明明

修改gradle脚本批量出包 并自动上传阿里云oss

parent b817f80d
2068725
2068729
2068731
2068735
2069603
2069604
2069605
2069606
2069607
2069608
2069609
2069610
2069611
2069612
2069613
2069614
2069615
2069616
2069617
2069618
2069619
2069620
2069621
2069622
2069623
2069624
2069625
2069626
2069627
2069628
2069629
2069678
2069679
2069680
2069681
2069682
2069683
2069684
2069685
2069686
2069687
2069688
2069689
2069690
2069691
2069692
2069693
2069694
2069695
2069696
2063627
2063628
2063629
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
import com.aliyun.oss.OSSClient
android {
//noinspection GradleDependency
compileSdkVersion 32
......@@ -42,6 +42,7 @@ android {
}
debug {
buildConfigField "String", "TASK_ID", project.taskId
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
......@@ -66,7 +67,6 @@ android {
buildConfigField "String", "CHANNEL_NAME", "\"${value}\""
}
}
productFlavors.all {
dimension "market"
}
......@@ -85,9 +85,11 @@ dependencies {
api 'com.google.zxing:core:3.4.1'
// 对于编码和解码功能
api 'com.journeyapps:zxing-android-embedded:4.2.0'
}
//批量打包
task executeAssembleRelease {
//先执行打包任务
dependsOn 'assembleRelease'
......@@ -116,4 +118,36 @@ task executeAssembleRelease {
}
}
}
}
//上传阿里云对象存储oss
task uploadApkToOss {
//先执行executeAssembleRelease
dependsOn executeAssembleRelease
doLast {
def endpoint = project.properties['OSS_ENDPOINT']
def accessKeyId = project.properties['OSS_ACCESS_KEY_ID']
def accessKeySecret = project.properties['OSS_ACCESS_KEY_SECRET']
def bucketName = project.properties['OSS_BUCKET_NAME']
def values = new File('D:\\Halomobi\\HaloDemo\\app\\build-values.txt').readLines()
values.each { value ->
def newFileName = "halodhh-${value}.apk"
println "-----------------------------$newFileName"
def apkPath ="${project.projectDir.absolutePath}/release/${newFileName}"
println "-----------------------------$apkPath"
def ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret)
try {
def objectName = "apk/${newFileName}"
ossClient.putObject(bucketName, objectName, new File(apkPath))
println("APK上传成功!OSS路径: ${objectName}")
} catch (e) {
throw new GradleException("上传失败: ${e.message}")
} finally {
ossClient.shutdown()
}
}
}
}
\ No newline at end of file
......@@ -11,6 +11,7 @@ buildscript {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url "https://jitpack.io" }
maven { url 'https://developer.huawei.com/repo/' }
maven { url 'https://plugins.gradle.org/m2/' }
google()
mavenCentral()
}
......@@ -20,6 +21,7 @@ buildscript {
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.17'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.aliyun.oss:aliyun-sdk-oss:3.10.2'
}
}
......@@ -33,6 +35,7 @@ allprojects {
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://developer.hihonor.com/repo' }
maven { url 'https://plugins.gradle.org/m2/' }
google()
mavenCentral()
maven { url "https://jitpack.io" }
......
......@@ -17,5 +17,10 @@ android.useAndroidX=true
android.enableJetifier=true
channelName = ""
taskId="219955634"
OSS_ENDPOINT=oss-cn-beijing.aliyuncs.com
OSS_ACCESS_KEY_ID=
OSS_ACCESS_KEY_SECRET=
OSS_BUCKET_NAME=
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