Expose flags for collapse resource name to 'convert' command.
To achieve this ParseResourceConfig is extracted to Utils.cpp and tests
are moved from Optimize_test.cpp to Util_test.cpp.
Bug: b/249793372
Test: Util_test, Convert_test
Change-Id: I5a0458e3834d5ea62c96013abc14527285e895e0
diff --git a/tools/aapt2/cmd/Optimize.h b/tools/aapt2/cmd/Optimize.h
index 790bb74..794a87b 100644
--- a/tools/aapt2/cmd/Optimize.h
+++ b/tools/aapt2/cmd/Optimize.h
@@ -123,6 +123,14 @@
AddOptionalFlag("--resource-path-shortening-map",
"Path to output the map of old resource paths to shortened paths.",
&options_.shortened_paths_map_path);
+ AddOptionalSwitch(
+ "--deduplicate-entry-values",
+ "Whether to deduplicate pairs of resource entry and value for simple resources.\n"
+ "This is recommended to be used together with '--collapse-resource-names' flag or for\n"
+ "APKs where resource names are manually collapsed. For such APKs this flag allows to\n"
+ "store the same resource value only once in resource table which decreases APK size.\n"
+ "Has no effect on APKs where resource names are kept.",
+ &options_.table_flattener_options.deduplicate_entry_values);
AddOptionalSwitch("-v", "Enables verbose logging", &verbose_);
}