summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2016-12-06 06:54:26 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-12-06 06:54:29 +0000
commit6d62b033e0a8c78f140649dd8560a91511afcffb (patch)
tree1aa0144a74038d97a712d37e9a334fc11bd39d07
parent598e9a7f41c714b6ccac05dea0d63e9274af7739 (diff)
parent5119e517308b84011fbd4d1a013296f4f5ffb8e4 (diff)
Merge "AAPT2: Allow <meta-data> in <manifest>"
-rw-r--r--tools/aapt2/.clang-format1
-rw-r--r--tools/aapt2/Main.cpp2
-rw-r--r--tools/aapt2/link/ManifestFixer.cpp2
-rw-r--r--tools/aapt2/link/ManifestFixer_test.cpp17
-rw-r--r--tools/aapt2/readme.md4
5 files changed, 25 insertions, 1 deletions
diff --git a/tools/aapt2/.clang-format b/tools/aapt2/.clang-format
index 545366a9b70b..71c5ef2fcda0 100644
--- a/tools/aapt2/.clang-format
+++ b/tools/aapt2/.clang-format
@@ -1,2 +1,3 @@
BasedOnStyle: Google
+ColumnLimit: 100
diff --git a/tools/aapt2/Main.cpp b/tools/aapt2/Main.cpp
index a3404e5db21c..a2b216d01b11 100644
--- a/tools/aapt2/Main.cpp
+++ b/tools/aapt2/Main.cpp
@@ -25,7 +25,7 @@ namespace aapt {
static const char* sMajorVersion = "2";
// Update minor version whenever a feature or flag is added.
-static const char* sMinorVersion = "3";
+static const char* sMinorVersion = "4";
int PrintVersion() {
std::cerr << "Android Asset Packaging Tool (aapt) " << sMajorVersion << "."
diff --git a/tools/aapt2/link/ManifestFixer.cpp b/tools/aapt2/link/ManifestFixer.cpp
index 36a34941347f..4185937e6e38 100644
--- a/tools/aapt2/link/ManifestFixer.cpp
+++ b/tools/aapt2/link/ManifestFixer.cpp
@@ -216,6 +216,8 @@ bool ManifestFixer::BuildRules(xml::XmlActionExecutor* executor,
manifest_action["supports-gl-texture"];
+ manifest_action["meta-data"] = meta_data_action;
+
// Application actions.
xml::XmlNodeAction& application_action = manifest_action["application"];
application_action.Action(OptionalNameIsJavaClassName);
diff --git a/tools/aapt2/link/ManifestFixer_test.cpp b/tools/aapt2/link/ManifestFixer_test.cpp
index e9bc64acc542..fc6970c8c5bd 100644
--- a/tools/aapt2/link/ManifestFixer_test.cpp
+++ b/tools/aapt2/link/ManifestFixer_test.cpp
@@ -87,6 +87,23 @@ TEST_F(ManifestFixerTest, EnsureManifestHasPackage) {
EXPECT_EQ(nullptr, Verify("<manifest package=\"@string/str\" />"));
}
+TEST_F(ManifestFixerTest, AllowMetaData) {
+ auto doc = Verify(R"EOF(
+ <manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="android">
+ <meta-data />
+ <application>
+ <meta-data />
+ <activity android:name=".Hi"><meta-data /></activity>
+ <activity-alias android:name=".Ho"><meta-data /></activity-alias>
+ <receiver android:name=".OffToWork"><meta-data /></receiver>
+ <provider android:name=".We"><meta-data /></provider>
+ <service android:name=".Go"><meta-data /></service>
+ </application>
+ </manifest>)EOF");
+ ASSERT_NE(nullptr, doc);
+}
+
TEST_F(ManifestFixerTest, UseDefaultSdkVersionsIfNonePresent) {
ManifestFixerOptions options = {std::string("8"), std::string("22")};
diff --git a/tools/aapt2/readme.md b/tools/aapt2/readme.md
index ac411b15ae83..800103307e2b 100644
--- a/tools/aapt2/readme.md
+++ b/tools/aapt2/readme.md
@@ -1,5 +1,9 @@
# Android Asset Packaging Tool 2.0 (AAPT2) release notes
+## Version 2.4
+### `aapt2 link ...`
+- Supports `<meta-data>` tags in `<manifest>`.
+
## Version 2.3
### `aapt2`
- Support new `font` resource type.