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

Commit d5a53c0

Browse files
Merge pull request #1258 from vtrifonov/master
fix: getting merge assets output folder
2 parents 7778257 + 12275c2 commit d5a53c0

File tree

1 file changed

+19
-21
lines changed

1 file changed

+19
-21
lines changed

src/scripts/postinstall.js

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5270,29 +5270,27 @@ module.exports = function($logger, $projectData) {
52705270
appBuildGradleContent = appBuildGradleContent.replace("ensureMetadataOutDir.finalizedBy(buildMetadata)", "ensureMetadataOutDir.finalizedBy(buildMetadata)\\n\\t\\tbuildMetadata.finalizedBy(copyMetadata)");
52715271
appBuildGradleContent += \`
52725272
task copyMetadata {
5273-
doLast {
5274-
copy {
5275-
from "$projectDir/src/main/assets/metadata"
5276-
def toDir = project.hasProperty("release") ? "release" : "debug"
5277-
def toAssetsDir = "assets"
5278-
5279-
if (new File("$projectDir/build/intermediates/merged_assets").listFiles() != null) {
5280-
toAssetsDir = "merged_assets"
5281-
toDir = new File("$projectDir/build/intermediates/merged_assets").listFiles()[0].name
5282-
if (toDir == 'debug') {
5283-
toDir += "/mergeDebugAssets"
5284-
} else {
5285-
toDir += "/mergeReleaseAssets"
5286-
}
5287-
toDir += "/out"
5288-
} else if (new File("$projectDir/build/intermediates/assets").listFiles() != null) {
5289-
toDir = new File("$projectDir/build/intermediates/assets").listFiles()[0].name
5290-
if (toDir != 'debug' && toDir != 'release') {
5291-
toDir += "/release"
5273+
doFirst {
5274+
android.applicationVariants.all { variant ->
5275+
def provider = variant.getMergeAssetsProvider()
5276+
if (variant.buildType.name == project.selectedBuildType) {
5277+
def task = provider.get();
5278+
for (File file : task.getOutputs().getFiles()) {
5279+
if(!file.getPath().contains("/incremental/")) {
5280+
project.ext.mergedAssetsOutputPath = file.getPath()
52925281
}
52935282
}
5294-
5295-
into "$projectDir/build/intermediates/" + toAssetsDir + "/" + toDir + "/metadata"
5283+
}
5284+
}
5285+
}
5286+
doLast {
5287+
copy {
5288+
if(!project.mergedAssetsOutputPath) {
5289+
// mergedAssetsOutputPath not found fallback to the default value for android gradle plugin 3.4.0
5290+
project.ext.mergedAssetsOutputPath = "$projectDir/build/intermediates/assets/\${project.selectedBuildType}/out"
5291+
}
5292+
from "$projectDir/src/main/assets/metadata"
5293+
into "\${project.mergedAssetsOutputPath}/metadata"
52965294
}
52975295
}
52985296
}\`;

0 commit comments

Comments
 (0)