4ca56978a9aea3f021a54ed9265de10811984d94 |
|
27-Apr-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Add workaround for non-standard package IDs The dynamic ref table used to map build-time IDs to runtime IDs is mainly used for shared resource libraries and has a few built-in mappings (app 0x7f and framework 0x01). Using a non-standard package ID like 0x80 causes a failure in package ID lookup. The solution is to ship the dynamic_ref_table with an identity mapping with any resource table that uses a non-standard package ID. Adds some tests to ensure this works correctly. Bug: 37498913 Test: make libandroidfw_tests Test: make aapt2_tests Change-Id: Ic3f67942384d34e7fdcbc94ded360e940e3ebc8a
/frameworks/base/tools/aapt2/test/Context.h
|
b522f04bc2a581e2877bef4a44ac00b827f879ed |
|
22-Apr-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Allow truncating of package names ResTable_package header only allows 127 UTF-16 characters, so AAPT would truncate the real package name to fit. AAPT2 would error-out on any package name longer than 127 UTF-16 characters. This strictness is not required except when building shared libraries, which use the full package name as a way of identifying the runtime assigned package ID to package name mapping. Bug: 36940145 Test: make aapt2_tests Change-Id: I7d2b7e50c7ab30c6a6c4f15d310e711f68e35091
/frameworks/base/tools/aapt2/test/Context.h
|
ceb9b2f80f853059233cdd29057f39a5960a74ae |
|
16-Feb-2017 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Shared library support Test: make aapt2_tests Change-Id: I98dddf1367e6c0ac425bb20be46e6ff05f4f2f45
/frameworks/base/tools/aapt2/test/Context.h
|
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/test/Context.h
|
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/test/Context.h
|
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/test/Context.h
|
470f8fcb5c0c59b28b5f73ee011a797b05085da7 |
|
15-Aug-2016 |
Chih-Hung Hsieh <chh@google.com> |
Fix clang-tidy warnings in aapt and aapt2. * Add explicit keyword to conversion constructors. * Add NOLINT(implicit) comments for implicit conversion constructors. Bug: 28341362 * Use const reference type for read-only parameters. Bug: 30407689 * Add NOLINT to suppress wrong clang-tidy warnings on macros. Test: build with WITH_TIDY=1 Change-Id: Ibfafb23d9be463b4072745a51a6d9f1812dcac45
/frameworks/base/tools/aapt2/test/Context.h
|
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/test/Context.h
|
fb6312fe93a8544e6a95d1c619c8cea3940cbe1a |
|
28-Jun-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Add version collapsing When an app specifies (or imports) resources with various configurations for different SDK versions, specifying a minSdk will make many of those resources unreachable. Version collapsing will prune out the resources specified for SDK versions less than the minSdk. If, however, there is no exact matching resource for the minSdk version, the next smallest SDK version is kept. Change-Id: Ic7bcab6c59d65c97c67c8767358abb57cdec60a4
/frameworks/base/tools/aapt2/test/Context.h
|
64587af8179affd38ee26543b748f2d63b7f67bb |
|
19-Feb-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Support building, linking, and merging static libraries Android static libraries are like APKs but they contain much more debugging and source information. We need to treat them differently in 3 ways: 1) When building a static library, we skip things like ID assignment and product/config stripping. Source information is emitted as well. 2) When building a static library and linking against another static library, we don't want to merge, we want to simply reference. 3) When building an app that uses static libraries, we want to merge the static library under the same package with or without mangling. Bug:25958912 Change-Id: I425e032857936a3e83173c1edc2a6cdc6020b842
/frameworks/base/tools/aapt2/test/Context.h
|
355f285ffd000f6cfe76680eb22d010546d124bb |
|
14-Feb-2016 |
Adam Lesinski <adamlesinski@google.com> |
AAPT2: Implement density stripping and initial Split support When a preferred density is supplied, the closest matching densities will be selected, the rest stripped from the APK. Split support will be enabled in a later CL. Command line support is still needed, but the foundation is ready. Bug:25958912 Change-Id: I56d599806b4ec4ffa24e17aad48d47130ca05c08
/frameworks/base/tools/aapt2/test/Context.h
|
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/test/Context.h
|
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/test/Context.h
|