diff options
author | Googler <noreply@google.com> | 2017-11-16 08:18:32 -0800 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2017-11-16 08:20:02 -0800 |
commit | 2670a2690a62e3eff14c3896bc8103ffa613aa28 (patch) | |
tree | 7a07cd1708cd652970bfa94c2d35a9fe7cd43e9a /src/tools | |
parent | 72cbef729f69d167a48f010e28fb9717f25e74db (diff) |
Enable aapt2 packaging action to use compiled resources for merging rather than parsed resources.
RELNOTES: none
PiperOrigin-RevId: 175965731
Diffstat (limited to 'src/tools')
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java | 27 |
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), |