eaf77e1d3a6ad4995ddd92a429802cffbf0f0209 |
|
26-Apr-2018 |
Ryan Mitchell <rtmitchell@google.com> |
AAPT2: Fixed id parsing error A previous change, editied the logic for parsing ids to allow for ids to reference other ids. This change though caused a regression that made ids in the form '<id name="name" />' cease to parse. This changes fixes that regression. Bug: 78513618 Test: Updated tests in ResourceParser_test.cpp Change-Id: I3608bb764464e951a50910be55e199c6ec575d09
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
9efbbef2e060cd5e05f5b652ba5c7aaf687f64d6 |
|
18-Apr-2018 |
y <rtmitchell@google.com> |
AAPT2: Support id reference chaining from AAPT AAPT would allow for ids to be declared in the form: <item name="name" type="id>@id/other</item> @id/name should hold a reference to @id/other. When getResources().getValue() is called on R.id.name with resolveRefs enabled, the resuling reference should be R.id.other. Bug: 69445910 Test: Created tests for correct parsing of id references and correct resolving of deep references Change-Id: Id1feb37b2565c213dc6a19b4c401906260d7fc14
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
9beaa9cfe3bd8c7c59eed053ff6ca18951c34a86 |
|
29-Mar-2018 |
Ryan Mitchell <rtmitchell@google.com> |
Changed AAPT2 to abide by AAPT resource whitespace triming. Bug: b/74331008 Test: Created tests in ResourceParser_test.cpp Change-Id: Id7b387692b795774cd77452ca8cf06a8447bf3be (cherry picked from commit a04880771254f5169a1fe460ff40b565d9dceb0d)
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
2eed52ecc0c2fa3e96530e4b5556eaa82f7c2dfc |
|
22-Feb-2018 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix styled string whitespace processing Change styled string whitespace processing to be like AAPT's was. Main changes: - whitespace around tags is preserved. - tags start exactly where they are supposed to, not off by one. Bug: 72406283 Test: make aapt2_tests Change-Id: I4d12728c493efd8c978e2e3d2718b56534ff52ef
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
71be70507de9cb619b644e55eda1cc181e3f7e90 |
|
13-Dec-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Propagate SPEC_OVERLAYABLE flag to final APK Resources can be marked as overlayable, which means they can be overlaid by runtime resource overlays. This change propagates this state to the final resource table that is installed on device. Future work: - Have the idmap tool respect the overlayable state and ignore entries that overlay anything else. Bug: 64980941 Test: make aapt2_tests Change-Id: Id45b1e141a281be2ee32a4ac3096fcf1114d523b
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
004511660671511ae88e0e837a6f92db28eadaef |
|
03-Oct-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Define and Implement AAPT Container Format AAPT Container Format (.apc) is a simple container that enumerates the various intermediate files that AAPT2 generates during the compile phase. The format is defined in formats.md. For now, continue using the .flat extension for the container file, and keep making use of the .flata zip for storing multiple files. This will allow easier integration with existing build systems and allow the evolution of the APC format to better handle arbitrarily large files. Test: make aapt2_tests Change-Id: Id7216e5b76316bdd683f0fa4eaf2d2da273ba815
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
46c4d72bf0c30d3bc2071b84e2741e404c45e2b7 |
|
23-Aug-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Add <overlayable> tag support This doesn't actually do anything yet, but makes sure it is not a syntax error and allows teams to start marking their resources as overlayable. The syntax form marking a set of resources as overlayable looks like: <overlayable policy="system"> <item type="string" name="foo" /> <item type="style" name="bar" /> </overlayable> Currently, the only supported policy is "system", meaning only the system will be able to overlay the resources. Leaving out the policy attribute defaults to "system". Bug: 64980941 Test: make aapt2_tests Change-Id: Ied7a9ddae87a4a0af6a0f4d1c213bfce8a0ed612
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
4ffea040641d3b74ab04b6d2d3e78280bc893d5f |
|
11-Aug-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Define intermediate compiled XML proto This proto format is meant to encapsulate more information that is specific to Android and allows for easier validation and manipulation across tools. Test: make aapt2_tests Change-Id: I13bc34a460671fc0a36246be0d287a3d37d244d6
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
efeb7af13be4446ce4a511a2ca707691e9a67c1e |
|
02-Aug-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix windows unicode path issues Mingw64 was being difficult, so instead of defining a wmain entrypoint, the command line parameters are parsed manually using built-in Windows methods that support Unicode. The results are converted to UTF8 and handled just like the rest of the linux/mac version of the code. This also removes dependencies on std::istream in favour of a FileInputStream which calls the appropriate unicode version of open to read a file. No speed regressions found on Linux or MacOS. Bug: 62336414 Bug: 63830502 Test: manual Change-Id: I597da51e33729ed1b98bf246e7e773337fd3fee8
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
060b53d0287f9e685fb5b49b52a864ef85315a22 |
|
29-Jul-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Ensure style strings are always first in StringPool Move the styled strings to a separate section of the StringPool so that sorting can never mess up the order of Styles. Bug: 63570514 Test: make aapt2_tests Change-Id: Id2ce1355b92be1bb31ce0daa7e54ae9b5b6c2ffe
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
549e437e14f3b92f02bd3abc7d1cd68387132ce1 |
|
28-Jun-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Iterate over UTF-8 string by codepoints Iterating over a UTF-8 string by codepoints ensures that unicode characters do not get sliced. Otherwise the resulting string could contain malformed characters. Bug: 62839202 Test: make aapt2_tests Change-Id: Ia0c44fbceb7dcfa11e77a1a77011da0f5466e342
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
a45893a5c51cc26f1fd63ec1aa4c39f55911c85b |
|
31-May-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Clean up tests a bit Since the latest gtest has fixed support for explicit bool operators, remvoe AAPT_ASSERT_* and AAPT_EXPECT_*. Also switch to use NotNull() matchers, which are more legible. Test: make aapt2_tests Change-Id: Idce199ca9d567d70f7aae275fee15e04bb914c9e
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
b9f0548341f98a64a87fa35ef5f58d1daf973ca7 |
|
03-Jun-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Do not interpret %n as a format specifier in string resources %n is a special value marking a platform independent newline and is not to be considered a format argument. Bug: 37132275 Test: make aapt2_tests Change-Id: I806521e44afe20004344dee9f18ecee6cc7086ea
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
bab4ef56d7803f3a50ccfaca2729509338fcbb23 |
|
02-Jun-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Allow undefined resources (placeholders) A resource defined like so: <item type="drawable" name="foo" /> should be assigned the value @null. The only exception is for <string> resources, which are given the empty string value (since <string></string> is ambiguous). The decision to use "" is based off the fact that old AAPT used to assign "" to all undefined resources, even non-string ones. Bug: 38425050 Test: make aapt2_tests Change-Id: Ib3e0f6f83d16ddd8b279c9fd44a07a37867b85e9
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
e597d68d33c76c2b830f5497ed4ba74c5193a056 |
|
02-Jun-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Allow any value type for <item> without format attr TO bring AAPT2 behavior in-line with AAPT, <item> has a default format of "any", and only becomes restricted with an explicit format attribute. Bug: 62260121 Test: make aapt2_tests Change-Id: Ife416f520e6c2710bb30e3ba3f2d4463794bfa06
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
4488f1c74a0f7df09f2b201f7caa228d729e8389 |
|
27-May-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix <add-resource> tag for overlays Bug: 38355988 Test: make aapt2_tests Change-Id: Iea8887f55f8ceb2c15bd963405fd132916173c0c
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
d5fd76a2ff78400505ade936fc36e707d69ecf72 |
|
16-May-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Respect format attr in <array> resource Bug: 38152130 Test: make aapt2_tests Change-Id: I84f352afb1a8fd2f329354f789aaa36c5ef88e47
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
8049f3da712ea9c3154b57ce2276c97e749d1f2c |
|
01-Apr-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix pseudolocalization (again) Pseudolocalization didn't properly handle spans in strings like "<small><small>Hello</small></small>". The spans would be identical and when doing range checks only one of them would be updated. Switched to a more robust way of extracting the relevant chunks of a styled string. This uses a stack, which is more in line with the real representation in XML. Bug: 34088357 Test: make aapt2_tests Change-Id: Ia4e4501713e688c96a89e26e4e2b1384f4cd3889
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
8f7c550e20a6edbc9af7bb48675afaf8bcb3783f |
|
03-Mar-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix Plural::Equals() method Test: make aapt2_tests Bug: 35902437 Change-Id: I8797f89af58876f891f0b0c5cce85fd7781c4e24
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
7542162cb1b1fd2ce8a26dd7f3fedc8de8160d38 |
|
07-Jan-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix pseudolocalization to respect <xliff:g> The XLIFF 'g' tag specifies content that should NOT be translated. AAPT2's pseudolocalization process should respect it. Bug:34064599 Test: make libandroidfw_tests Change-Id: Ice437d7f0ff246730ee04896fd035e2d846148fb
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
86d67df8d57b9537666f9b54a9ca563779a2288b |
|
31-Jan-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Support CtsContentTestCases build - Add <feature-group> to ManifestFixer. - Support <meta-data> in <instrumentation> - Add support for <bag> and type="configVarying". Some CTS tests use this old notation, we need to support it (even though configVarying isn't anything supported by the framework convention). Change-Id: I6946fa633ce513ea8437c1496db883cf27dcf6de Test: make aapt2_tests
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
d5083f6f6b9bc76bbe64052bcec639eee752a321 |
|
17-Jan-2017 |
Adam Lesinski <adamlesinski@google.com> |
Move StringPiece to libandroidfw libandroidfw needs to make use of StringPiece, so move it to libandroidfw and update all code referencing StringPiece in aapt2. Test: make libandroidfw_tests libaapt2_tests Change-Id: I68d7f0fc7c651b048d9d1f5e7971f10ef5349fa1
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
ce5e56e243d262a9b65459c3bd0bb9eaadd40628 |
|
22-Oct-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Rename to match new style Use Google3 naming style to match new projects' and open source google projects' style. Preferred to do this in a massive CL so as to avoid style inconsistencies that plague legacy code bases. This is a relatively NEW code base, may as well keep it up to date. Test: name/style refactor - existing tests pass Change-Id: Ie80ecb78d46ec53efdfca2336bb57d96cbb7fb87
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
cacb28f2d60858106e2819cc7d95a65e8bda890b |
|
19-Oct-2016 |
Adam Lesinski <adamlesinski@google.com> |
Use Google3 style guide with .clang-format Test: style change only, builds ok Change-Id: I885180e24cb2e7b58cfb4967c3bcb40058ce4078
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
8c3f31f022f7e094fd227ef0c2987e0846cb3e43 |
|
07-Sep-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix issue with styled string indices Styled strings use spans to denote which part is styled (<b>, <i>, etc). Spans are simply a range of indices into the original string. In Java, we use String and its internal representation, meaning we must encode the indices using UTF16 lengths. When the internal AAPT2 representation of strings switched to UTF8, the indices also began to index into the UTF8 string. This change reverts the indices to use UTF16 lengths. Bug:31170115 Change-Id: I07b8b5b67d2542c7e0a855b601cdbd3ac4ebffb0
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
58a20a6482a56a262fd83a617482641e3a981db1 |
|
26-Jul-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Change accepted notation for resource names in tests Previously the way to name resources in tests was to use reference notation (@[package:][type/]name). Now we use name notation (no @). Change-Id: I68f0a36562d89cc78c582d128f370d9556c58707
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
d0f116b619feede0cfdb647157ce5ab4d50a1c46 |
|
09-Jul-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Remove usage of u16string For legacy reasons, we kept around the use of UTF-16 internally in AAPT2. We don't need this and this CL removes all instances of std::u16string and StringPiece16. The only places still needed are when interacting with the ResTable APIs that only operate in UTF16. Change-Id: I492475b84bb9014fa13bf992cff447ee7a5fe588
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
e4bb9eb5af5b0899dc0921d5580220b20e15bd5a |
|
13-Feb-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Introduce notion of 'product' to ResourceTable This allows us to preserve the various product definitions during the compile phase, and allows us to select the product in the link phase. This allows compiled files to remain product-independent, so that they do not need to be recompiled when switching targets. Bug:25958912 Change-Id: Iaa7eed25c834b67a39cdc9be43613e8b5ab6cdd7
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
52364f7ae31716d7827ea8f8566f4a28bd30a921 |
|
11-Jan-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Variety of small fixes to get the build working - Add option to rename package in AndroidManifest.xml - Support default versionName and versionCode - Accept True and False as valid booleans Change-Id: I400e350b9dcd0fd1c197d1929144299c7823617d
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
7751afc796842bbb24bfbb19bd0fee4a7b7c8a4e |
|
07-Jan-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix product support Previously the default product wasn't tried if 'default' wasn't specified on the command line. Also adds support for multiple products. Change-Id: I1e4872b34bb8d609b6444841a4e7e4dbb3bbb76b
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
24b8ff0faf7c59323d0171cdd825ca09e712aa1e |
|
16-Dec-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix references to private parent Change-Id: Id4697551b6c8cb6167f562de593006ae3c6158c0
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
7ff3ee19f4b831a526baf4b928d1ac172d070d82 |
|
15-Dec-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Respect format attribute of <item> tag An <item> is a general tag that can override certain behavior. For instance, this is allowed: <item name="foo" type="integer" format="float">0.4</item> Even though without the format attribute, this would be illegal. Change-Id: I8133ce59e14719a70d7476a1464c3f564c435289
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
a6fe345be955368a13aea76aefb4db821aad11df |
|
10-Dec-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix overlay support Supports the <add-resource> tag and mimics old AAPT behavior of not allowing new resources defined unless <add-resource> was used or --auto-add-overlay was specified. Change-Id: I9b461137357617ade37fd7045b418b8e6450b9c4
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
a587065721053ad54e34f484868142407d59512d |
|
21-Nov-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Verify min/max attr fields Integers are now checked to see if they fall in the range of min/max for the attribute they are assigned. Change-Id: I42c435b15fd3f0bd23691c83efccce4ad5973276
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
467f171315f9c2037fcd3eb5edcfabc40671bf7b |
|
17-Nov-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fail compiling when private symbols are referenced Also moved some XML specific stuff into its own directory, and refactored ReferenceLinker a bit. Change-Id: I912247a82023c1bbf72dc191fbdaf62858cbec0c
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
fa10505ceaf9d4c41b76bb1b32f257926e96e441 |
|
07-Nov-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Accept aliases defined for external resource types Resource types that are typically stored outside of the resource table (like layout, xml, drawable) can only have aliases (reference to another resource). Change-Id: Idb768801f02bb142e5be5e438904f221499bd756
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
27afb9e8894b512b21fcca6ce142f40f1ee16cbb |
|
07-Nov-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Add support for clearer in-progress public attributes Before, the ID assigned to a public resource without an explicitly set id was more difficult to figure out. It would be the next available ID. AAPT2 introduces a new way to specify public attributes in progress. <public-group type="attr" first-id="0x0101047f"> <public name="foo" /> <public name="bar" /> ... </public-group> The IDs assigned to each resource is auto-incremented starting from `first-id`. This also keeps resource's with the same type grouped together so that the auto-incrementing nature is evident. Also, due to how AAPT2 was implemented, this is required :P Change-Id: I95ea92ad0405e87ed0b1766879bb2f1d9d0b636e
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
9f22204c3a9ddac4f92573c9ab098e6cf3ed1cb4 |
|
04-Nov-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix small issue with detecting translatable resources Change-Id: Idd21b5de4d20be06c6f8c8eb5a22ccd68afc4927
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
ca5638fd85098c3d0a699492751043545f75553a |
|
21-Oct-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Support generating Manifest.java This includes comments from AndroidManifest.xml. Change-Id: I412d9ecb12bad20a49a683d6b3bea4a0be1235ae
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
e78fd617ec60139a973a01925fa7adad31febb39 |
|
22-Oct-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Move comments and source into Value Values are closely related to where they were defined, so this information should live inside the Value. This also enables comments to be attached to nested Values. Change-Id: Ic7481b5a5f26d0ef248d638e2e29252f88154581
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
9ba47d813075fcb05c5e1532c137c93b394631cb |
|
13-Oct-2015 |
Adam Lesinski <adamlesinski@google.com> |
Filter products during compile phase Unfortunately there is no good way to deal with products in the link phase. Products are like preprocessor defines in that they are processed early and change the composition of the compiled unit. Change-Id: I6d5e15ef60d29df8e83e059ba857c09333993779
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
1ab598f46c3ff520a67f9d80194847741f3467ab |
|
14-Aug-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Separate out the various steps An early refactor. Some ideas became clearer as development continued. Now the various phases are much clearer and more easily reusable. Also added a ton of tests! Change-Id: Ic8f0a70c8222370352e63533b329c40457c0903e
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
dfa5e0705ff82f15e228ba076bc192893bcbe118 |
|
13-May-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Fix issue where @null was wrongly encoded @null must be encoded as TYPE_REFERENCE with a value of 0. TYPE_NULL is used by the runtime as a placeholder when resolving style attributes. If we set a style attribute to TYPE_NULL, the runtime will throw. The runtime will convert a TYPE_REFERENCE with value 0 to a proper null value. Change-Id: Id983ca7e1fbee3124dddafe32f1b5741b824225b
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
bdaa092a193d8ddccbd9ad8434be97878e6ded59 |
|
09-May-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: inferred style parent processing Change-Id: I8fbc4feef16b6039cf4c526fcfb767dc75a9c131
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
24aad163bc88cb10d2275385e9afc3de7f342d65 |
|
25-Apr-2015 |
Adam Lesinski <adamlesinski@google.com> |
Add namespace handling in attribute values Previously, you could only reference namespace prefixes in attribute names: <View xmlns:appcompat="http://schemas.android.com/apk/res/android.support.v7.appcompat" appcompat:name="hey" ... Now you can also reference them in resource names within an attribute value: ... android:text="@appcompat:string/confirm" ... Which will be treated as "@android.support.v7.appcompat:string/confirm". Change-Id: Ib076e867a990c80cf877a704eb77cd1ef0b23b52
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
769de98f2dd41bfe39a1c9f76aefd1ad58942733 |
|
11-Apr-2015 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Add library support Change-Id: I307f56d9631784ab29ee4156d94886f9b2f25b30
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|
6f6ceb7e1456698b1f33e04536bfb3227f9fcfcb |
|
14-Nov-2014 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2 First checking of AAPT2. The individual phases of AAPT2 work, but there are some missing pieces. For early testing we are missing: - Need to properly mark file references and include them in package - Need to package into zip Final AAPT for apps we are missing: - Need to crush PNGs - Need to parse 9-patches - Need to validate all of AndroidManifest.xml - Need to write align method to align resource tables for splits. Final AAPT for apps + system we are missing: - Need to handle overlays - Need to store comments for R file - Need to handle --shared-lib (dynamic references too). New AAPT features coming: - Need to import compiled libraries - Name mangling - R file generation for library code Change-Id: I95f8a63581b81a1f424ae6fb2c373c883b72c18d
/frameworks/base/tools/aapt2/ResourceParser_test.cpp
|