Update shrinker code from studio commits

This imports:
https://googleplex-android-review.git.corp.google.com/c/platform/tools/base/+/24348709
https://googleplex-android-review.git.corp.google.com/c/platform/tools/base/+/24524047

Bug: 287398085
Change-Id: I7c7edcfa0dc75a0fd456200103e5edd214ded5db
diff --git a/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerCli.java b/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerCli.java
index 3e30568..5f3ed0b 100644
--- a/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerCli.java
+++ b/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerCli.java
@@ -174,6 +174,9 @@
         resourceUsageRecorders.add(
                 new ProtoAndroidManifestUsageRecorder(
                         fileSystemProto.getPath(ANDROID_MANIFEST_XML)));
+        for (String rawResource : options.getRawResources()) {
+            resourceUsageRecorders.add(new ToolsAttributeUsageRecorder(Paths.get(rawResource)));
+        }
         // If the apk contains a raw folder, find keep rules in there
         if (new ZipFile(options.getInput())
                 .stream().anyMatch(zipEntry -> zipEntry.getName().startsWith("res/raw"))) {
diff --git a/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerImpl.kt b/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerImpl.kt
index 153f1ce..f49e811 100644
--- a/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerImpl.kt
+++ b/src/resourceshrinker/java/com/android/build/shrinker/ResourceShrinkerImpl.kt
@@ -243,7 +243,7 @@
         }
         zos.putNextEntry(outEntry)
         if (!entry.isDirectory) {
-            zos.write(ByteStreams.toByteArray(zis))
+            zis.transferTo(zos);
         }
         zos.closeEntry()
     }