History log of /frameworks/base/tools/aapt2/TableFlattener.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6cc479b76e9e2e8858434302e1ef2d514ed1b0ec 13-Jun-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Remove the need for specifying package name in compile phase

The compile phase doesn't use the AndroidManifest, so we had to specify the
package name on the command line.

We can omit the package name, since we don't resolve external references
in the compile phase. Packages that reference the current package will be encoded
with no package name. When loaded by the link phase, the package name will be supplied
and all the references with no package name will use that one.

Change-Id: I9fe4902b747b06899b45c968f30ba1aa05c5cd69
/frameworks/base/tools/aapt2/TableFlattener.cpp
330edcdf1316ed599fe0eb16a64330821fd92f18 05-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Support static lib referencing static lib

When a static library A references static library B,
and app C references both A and B, we get the following symbol merging,
symbols from library B get imported twice.

We must only check that symbol references to library B are valid
when building library A. We should only merge all the symbols
when building final app C.

Change-Id: I23cba33b0901dcbb5328d9c9dfaa6a979c073c36
/frameworks/base/tools/aapt2/TableFlattener.cpp
6ff19664f9279023c96e5a65c3059e1ef4beac0f 01-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Record public status in a more robust way

This allows us to store the source and comments of a resource's
public declaration and avoids issues where there is no default
configuration for a publicly declared resource (like with drawables
of various densities) and AAPT2 mistakenly took this as an error.

Change-Id: I07a2fe9f551daefcce842f205fb219d2fa453ebc
/frameworks/base/tools/aapt2/TableFlattener.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/TableFlattener.cpp
d5c4f8723c2b2c85b588fa07a5d4e7afb671d257 21-Apr-2015 Adam Lesinski <adamlesinski@google.com> Properly mangle file names

Change-Id: I49c0f82e8c06f056198eb64b8369d83403b74321
/frameworks/base/tools/aapt2/TableFlattener.cpp
ca2fc353c2b07e24e297fdc8426c7abd601d908b 03-Apr-2015 Adam Lesinski <adamlesinski@google.com> Fix windows build of AAPT2

Change-Id: Ib8e1a4322510b582e9600a08d3118842c9abc73c
/frameworks/base/tools/aapt2/TableFlattener.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/TableFlattener.cpp