fix(bugcollect-plugin): always inject xuqmBuildId manifest placeholder for all variants
The placeholder was only set when minifyEnabled=true, causing debug builds to fail with "no value for <xuqmBuildId> is provided". Moved buildId injection before the minify guard; mapping upload task registration stays after it. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
这个提交包含在:
父节点
3554cbdf31
当前提交
50effbb274
@ -90,15 +90,14 @@ class XuqmBugCollectPlugin : Plugin<Project> {
|
|||||||
?: return
|
?: return
|
||||||
|
|
||||||
androidComponents.onVariants { variant ->
|
androidComponents.onVariants { variant ->
|
||||||
|
// Always inject buildId — the AAR manifest placeholder must be resolved for every variant.
|
||||||
|
val buildId = SimpleDateFormat("yyyyMMddHHmmss", Locale.US).format(Date())
|
||||||
|
variant.manifestPlaceholders.put("xuqmBuildId", buildId)
|
||||||
|
|
||||||
|
// Mapping upload only makes sense for minified (release) builds.
|
||||||
val buildType = androidDsl.buildTypes.findByName(variant.buildType ?: "") ?: return@onVariants
|
val buildType = androidDsl.buildTypes.findByName(variant.buildType ?: "") ?: return@onVariants
|
||||||
if (!buildType.isMinifyEnabled) return@onVariants
|
if (!buildType.isMinifyEnabled) return@onVariants
|
||||||
|
|
||||||
// Generate a per-build identifier stamped at configuration time.
|
|
||||||
val buildId = SimpleDateFormat("yyyyMMddHHmmss", Locale.US).format(Date())
|
|
||||||
// Inject via manifestPlaceholders — SDK reads it from ApplicationInfo.metaData.
|
|
||||||
// This avoids the namespace vs applicationId mismatch of BuildConfig reflection.
|
|
||||||
variant.manifestPlaceholders.put("xuqmBuildId", buildId)
|
|
||||||
|
|
||||||
val configFile = findVariantConfigFile(target.projectDir, variant.flavorName, variant.buildType)
|
val configFile = findVariantConfigFile(target.projectDir, variant.flavorName, variant.buildType)
|
||||||
val (fileAppKey, filePlatformUrl) = when {
|
val (fileAppKey, filePlatformUrl) = when {
|
||||||
configFile != null -> readEncryptedConfigFile(configFile)
|
configFile != null -> readEncryptedConfigFile(configFile)
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户