aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java27
1 files changed, 17 insertions, 10 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java b/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
index a34ed208e0..9bdd1a098f 100644
--- a/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
+++ b/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
@@ -103,19 +103,26 @@ public class Aapt2ResourcePackagingAction {
profiler.recordEndOf("setup").startTask("merging");
+ AndroidDataDeserializer dataDeserializer =
+ aaptConfigOptions.useCompiledResourcesForMerge
+ ? AndroidCompiledDataDeserializer.withFilteredResources(options.prefilteredResources)
+ : AndroidParsedDataDeserializer.withFilteredResources(options.prefilteredResources);
+
// Checks for merge conflicts.
MergedAndroidData mergedAndroidData =
AndroidResourceMerger.mergeData(
- options.primaryData,
- options.directData,
- options.transitiveData,
- mergedResources,
- mergedAssets,
- null /* cruncher. Aapt2 automatically chooses to crunch or not. */,
- options.packageType,
- options.symbolsOut,
- options.prefilteredResources,
- false /* throwOnResourceConflict */)
+ ParsedAndroidData.from(options.primaryData),
+ options.primaryData.getManifest(),
+ options.directData,
+ options.transitiveData,
+ mergedResources,
+ mergedAssets,
+ null /* cruncher. Aapt2 automatically chooses to crunch or not. */,
+ options.packageType,
+ options.symbolsOut,
+ null /* rclassWriter */,
+ dataDeserializer,
+ options.throwOnResourceConflict)
.filter(
new DensitySpecificResourceFilter(
densitiesToFilter, filteredResources, mergedResources),