aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourceShrinkingAction.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/android/java/com/google/devtools/build/android/Aapt2ResourceShrinkingAction.java')
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/Aapt2ResourceShrinkingAction.java22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourceShrinkingAction.java b/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourceShrinkingAction.java
index e9fa1cb338..828981afa5 100644
--- a/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourceShrinkingAction.java
+++ b/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourceShrinkingAction.java
@@ -20,6 +20,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.util.concurrent.ListenableFuture;
import com.google.common.util.concurrent.ListeningExecutorService;
import com.google.devtools.build.android.ResourceShrinkerAction.Options;
+import com.google.devtools.build.android.ResourcesZip.ShrunkProtoApk;
import com.google.devtools.build.android.aapt2.Aapt2ConfigOptions;
import com.google.devtools.build.android.aapt2.CompiledResources;
import com.google.devtools.build.android.aapt2.ResourceCompiler;
@@ -108,19 +109,22 @@ public class Aapt2ResourceShrinkingAction {
.collect(toSet());
if (aapt2ShrinkOptions.useProtoApk) {
- resourcesZip
- .shrinkUsingProto(
+ try (final ShrunkProtoApk shrunk =
+ resourcesZip.shrinkUsingProto(
packages,
options.shrunkJar,
options.proguardMapping,
options.log,
- scopedTmp.subDirectoryOf("shrunk-resources"))
- .writeBinaryTo(linker, options.shrunkApk, aapt2ConfigOptions.resourceTableAsProto)
- .writeReportTo(options.log)
- .writeResourcesToZip(options.shrunkResources);
- if (options.rTxtOutput != null) {
- // Fufill the contract -- however, we do not generate an R.txt from the shrunk resources.
- Files.copy(options.rTxt, options.rTxtOutput);
+ scopedTmp.subDirectoryOf("shrunk-resources"))) {
+ shrunk
+ .writeBinaryTo(linker, options.shrunkApk, aapt2ConfigOptions.resourceTableAsProto)
+ .writeReportTo(options.log)
+ .writeResourcesToZip(options.shrunkResources);
+ if (options.rTxtOutput != null) {
+ // Fufill the contract -- however, we do not generate an R.txt from the shrunk
+ // resources.
+ Files.copy(options.rTxt, options.rTxtOutput);
+ }
}
} else {
final ResourceCompiler resourceCompiler =