mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-09 07:16:04 -04:00
Upload bundle on playstore instead of apk for custom apps
This commit is contained in:
parent
43e7e466c5
commit
7f38468c31
@ -89,7 +89,7 @@ class Transaction(
|
|||||||
ExpansionFile().apply { referencesVersion = expansionCode }
|
ExpansionFile().apply { referencesVersion = expansionCode }
|
||||||
).execute().prettyPrint()
|
).execute().prettyPrint()
|
||||||
|
|
||||||
fun uploadApk(apkVariantOutput: ApkVariantOutput) {
|
fun uploadBundle(apkVariantOutput: ApkVariantOutput) {
|
||||||
publisher.edits().apks().upload(
|
publisher.edits().apks().upload(
|
||||||
packageName,
|
packageName,
|
||||||
editId,
|
editId,
|
||||||
|
@ -25,7 +25,7 @@ android {
|
|||||||
all {
|
all {
|
||||||
File("$projectDir/src", "$name/$name.zim").let {
|
File("$projectDir/src", "$name/$name.zim").let {
|
||||||
createDownloadTask(it)
|
createDownloadTask(it)
|
||||||
createPublishApkWithExpansionTask(it, applicationVariants)
|
createPublishBundleWithExpansionTask(it, applicationVariants)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -61,12 +61,12 @@ fun ProductFlavor.fetchUrl(): String {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun ProductFlavor.createPublishApkWithExpansionTask(
|
fun ProductFlavor.createPublishBundleWithExpansionTask(
|
||||||
file: File,
|
file: File,
|
||||||
applicationVariants: DomainObjectSet<ApplicationVariant>
|
applicationVariants: DomainObjectSet<ApplicationVariant>
|
||||||
): Task {
|
): Task {
|
||||||
val capitalizedName = name.capitalize()
|
val capitalizedName = name.capitalize()
|
||||||
return tasks.create("publish${capitalizedName}ReleaseApkWithExpansionFile") {
|
return tasks.create("publish${capitalizedName}ReleaseBundleWithExpansionFile") {
|
||||||
group = "publishing"
|
group = "publishing"
|
||||||
description = "Uploads $capitalizedName to the Play Console with an Expansion file"
|
description = "Uploads $capitalizedName to the Play Console with an Expansion file"
|
||||||
doLast {
|
doLast {
|
||||||
@ -75,8 +75,8 @@ fun ProductFlavor.createPublishApkWithExpansionTask(
|
|||||||
createPublisher(File(rootDir, "playstore.json"))
|
createPublisher(File(rootDir, "playstore.json"))
|
||||||
.transactionWithCommit(packageName) {
|
.transactionWithCommit(packageName) {
|
||||||
val variants =
|
val variants =
|
||||||
applicationVariants.releaseVariantsFor(this@createPublishApkWithExpansionTask)
|
applicationVariants.releaseVariantsFor(this@createPublishBundleWithExpansionTask)
|
||||||
variants.forEach(::uploadApk)
|
variants.forEach(::uploadBundle)
|
||||||
uploadExpansionTo(file, variants[0])
|
uploadExpansionTo(file, variants[0])
|
||||||
variants.drop(1).forEach { attachExpansionTo(variants[0].versionCodeOverride, it) }
|
variants.drop(1).forEach { attachExpansionTo(variants[0].versionCodeOverride, it) }
|
||||||
addToTrackInDraft(variants)
|
addToTrackInDraft(variants)
|
||||||
@ -90,10 +90,10 @@ fun DomainObjectSet<ApplicationVariant>.releaseVariantsFor(productFlavor: Produc
|
|||||||
.outputs.filterIsInstance<ApkVariantOutput>().sortedBy { it.versionCodeOverride }
|
.outputs.filterIsInstance<ApkVariantOutput>().sortedBy { it.versionCodeOverride }
|
||||||
|
|
||||||
afterEvaluate {
|
afterEvaluate {
|
||||||
tasks.filter { it.name.contains("ReleaseApkWithExpansionFile") }.forEach {
|
tasks.filter { it.name.contains("ReleaseBundleWithExpansionFile") }.forEach {
|
||||||
val flavorName =
|
val flavorName =
|
||||||
it.name.substringAfter("publish").substringBefore("ReleaseApkWithExpansionFile")
|
it.name.substringAfter("publish").substringBefore("ReleaseBundleWithExpansionFile")
|
||||||
it.dependsOn.add(tasks.getByName("download${flavorName}Zim"))
|
it.dependsOn.add(tasks.getByName("download${flavorName}Zim"))
|
||||||
it.dependsOn.add(tasks.getByName("assemble${flavorName}Release"))
|
it.dependsOn.add(tasks.getByName("bundle${flavorName.capitalize()}Release"))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user