Skip to content
This repository was archived by the owner on Apr 4, 2023. It is now read-only.

Commit d397ef7

Browse files
fix: getting merge assets output folder #1258
1 parent 668ebce commit d397ef7

File tree

1 file changed

+18
-20
lines changed

1 file changed

+18
-20
lines changed

publish/scripts/installer.js

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1098,29 +1098,27 @@ module.exports = function($logger, $projectData) {
10981098
appBuildGradleContent = appBuildGradleContent.replace("ensureMetadataOutDir.finalizedBy(buildMetadata)", "ensureMetadataOutDir.finalizedBy(buildMetadata)\\n\\t\\tbuildMetadata.finalizedBy(copyMetadata)");
10991099
appBuildGradleContent += \`
11001100
task copyMetadata {
1101+
doFirst {
1102+
android.applicationVariants.all { variant ->
1103+
def provider = variant.getMergeAssetsProvider()
1104+
if (variant.buildType.name == project.selectedBuildType) {
1105+
def task = provider.get();
1106+
for (File file : task.getOutputs().getFiles()) {
1107+
if (!file.getPath().contains("/incremental/")) {
1108+
project.ext.mergedAssetsOutputPath = file.getPath()
1109+
}
1110+
}
1111+
}
1112+
}
1113+
}
11011114
doLast {
11021115
copy {
1116+
if (!project.mergedAssetsOutputPath) {
1117+
// mergedAssetsOutputPath not found fallback to the default value for android gradle plugin 3.4.0
1118+
project.ext.mergedAssetsOutputPath = "$projectDir/build/intermediates/assets/\${project.selectedBuildType}/out"
1119+
}
11031120
from "$projectDir/src/main/assets/metadata"
1104-
def toDir = project.hasProperty("release") ? "release" : "debug"
1105-
def toAssetsDir = "assets"
1106-
1107-
if (new File("$projectDir/build/intermediates/merged_assets").listFiles() != null) {
1108-
toAssetsDir = "merged_assets"
1109-
toDir = new File("$projectDir/build/intermediates/merged_assets").listFiles()[0].name
1110-
if (toDir == 'debug') {
1111-
toDir += "/mergeDebugAssets"
1112-
} else {
1113-
toDir += "/mergeReleaseAssets"
1114-
}
1115-
toDir += "/out"
1116-
} else if (new File("$projectDir/build/intermediates/assets").listFiles() != null) {
1117-
toDir = new File("$projectDir/build/intermediates/assets").listFiles()[0].name
1118-
if (toDir != 'debug' && toDir != 'release') {
1119-
toDir += "/release"
1120-
}
1121-
}
1122-
1123-
into "$projectDir/build/intermediates/" + toAssetsDir + "/" + toDir + "/metadata"
1121+
into "\${project.mergedAssetsOutputPath}/metadata"
11241122
}
11251123
}
11261124
}\`;

0 commit comments

Comments
 (0)