diff options
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/ResourceShrinker.java | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/ResourceShrinker.java b/src/tools/android/java/com/google/devtools/build/android/ResourceShrinker.java index fe15d351e5..a5e9169d17 100644 --- a/src/tools/android/java/com/google/devtools/build/android/ResourceShrinker.java +++ b/src/tools/android/java/com/google/devtools/build/android/ResourceShrinker.java @@ -81,6 +81,7 @@ import java.util.IdentityHashMap; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.logging.Logger; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; @@ -120,6 +121,8 @@ import javax.xml.parsers.ParserConfigurationException; */ public class ResourceShrinker { + private static final Logger logger = Logger.getLogger(ResourceShrinker.class.getName()); + public static final int TYPICAL_RESOURCE_COUNT = 200; private final List<String> resourcePackages; private final Path rTxt; @@ -205,7 +208,7 @@ public class ResourceShrinker { String folder = file.getParentFile().getName(); ResourceFolderType folderType = ResourceFolderType.getFolderType(folder); if (folderType != null && folderType != ResourceFolderType.VALUES) { - System.out.println("Deleted unused resource " + file); + logger.fine("Deleted unused resource " + file); assert skip != null; skip.add(file); } else { @@ -232,7 +235,7 @@ public class ResourceShrinker { if (root != null && TAG_RESOURCES.equals(root.getTagName())) { List<String> removed = Lists.newArrayList(); stripUnused(root, removed); - System.out.println("Removed " + removed.size() + " unused resources from " + file + ":\n " + logger.info("Removed " + removed.size() + " unused resources from " + file + ":\n " + Joiner.on(", ").join(removed)); String formatted = XmlPrettyPrinter.prettyPrint(document, xml.endsWith("\n")); rewritten.put(file, formatted); @@ -411,7 +414,8 @@ public class ResourceShrinker { roots.add(resource); } } - System.out.println("The root reachable resources are: " + Joiner.on(",\n ").join(roots)); + logger.fine(String.format("The root reachable resources are: %s", + Joiner.on(",\n ").join(roots))); Map<Resource, Boolean> seen = new IdentityHashMap<>(resources.size()); for (Resource root : roots) { visit(root, seen); @@ -441,7 +445,7 @@ public class ResourceShrinker { private void dumpReferences() { for (Resource resource : resources) { if (resource.references != null) { - System.out.println(resource + " => " + resource.references); + logger.info(resource + " => " + resource.references); } } } @@ -454,9 +458,9 @@ public class ResourceShrinker { } List<String> strings = new ArrayList<String>(mStrings); Collections.sort(strings); - System.out.println("android.content.res.Resources#getIdentifier present: " - + mFoundGetIdentifier); - System.out.println("Referenced Strings:"); + logger.fine(String.format("android.content.res.Resources#getIdentifier present: %s", + mFoundGetIdentifier)); + logger.fine("Referenced Strings:"); for (String s : strings) { s = s.trim().replace("\n", "\\n"); if (s.length() > 40) { @@ -464,8 +468,9 @@ public class ResourceShrinker { } else if (s.isEmpty()) { continue; } - System.out.println(" " + s); + logger.fine(" " + s); } + Set<String> names = Sets.newHashSetWithExpectedSize(50); for (Map<String, Resource> map : typeToName.values()) { names.addAll(map.keySet()); @@ -525,7 +530,7 @@ public class ResourceShrinker { } Resource resource = getResource(type, name); if (resource != null) { - System.out.println("Marking " + resource + " used because it " + logger.fine("Marking " + resource + " used because it " + "matches string pool constant " + string); } markReachable(resource); @@ -537,7 +542,7 @@ public class ResourceShrinker { for (Map<String, Resource> map : typeToName.values()) { Resource resource = map.get(string); if (resource != null) { - System.out.println("Marking " + resource + " used because it " + logger.fine("Marking " + resource + " used because it " + "matches string pool constant " + string); } markReachable(resource); |