• Home
  • History
  • Annotate
  • only in /frameworks/base/tools/aapt2/
History log of /frameworks/base/tools/aapt2/
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
inaryResourceParser.cpp
inaryResourceParser.h
inker.cpp
ain.cpp
ableFlattener.cpp
ata/Makefile
ata/lib/Makefile
a1ad4a812a87642ad259ff4478159e8cc8194680 08-Jun-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Proguard rules generation added.

Change-Id: Ifbe79516cd9a1ade471e211a259301c63b62ac67
ndroid.mk
ain.cpp
roguardRules.cpp
roguardRules.h
ource.h
til.cpp
til.h
til_test.cpp
ata/AndroidManifest.xml
ata/Makefile
ata/res/layout/main.xml
8c831ca87bb7c8699b2a5cb34b8d35deedf9ce4e 21-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Add manifest merging

Now that AAPT2 is library-aware, it needs to take care of
all library related work, including merging manifests.
The logic was taken from the current Java ManifestMerger.

Change-Id: Id93f713f27ae8617922bf89e325e45be9f863c06
ndroid.mk
ain.cpp
anifestMerger.cpp
anifestMerger.h
anifestMerger_test.cpp
ata/lib/AndroidManifest.xml
75f3a55cc569a9b61f540a85d9828e91bdca5047 03-Jun-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Change xml file parsing to DOM based

We modify the XML of layouts and AndroidManifest enough
that it warrants we operate on the tree in memory.
These files are never very large so this should be fine.

Change-Id: I5d597abdb3fca2a203cf7c0b40fcd926aecb3137
ndroid.mk
inaryXmlPullParser.cpp
inaryXmlPullParser.h
ain.cpp
dkConstants.cpp
dkConstants.h
mlDom.cpp
mlDom.h
mlDom_test.cpp
mlFlattener.cpp
mlFlattener.h
mlFlattener_test.cpp
39c353a6caada777348c14f6dc9abee2d4d9a3be 15-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Fix layout versioning

Change-Id: I37190cf8a1f0a81c068aeb2b5326b3b3080f75a5
ain.cpp
ata/Makefile
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
inaryResourceParser.cpp
esourceParser.cpp
esourceParser_test.cpp
d13fb249865703901b77f48c5fed1864f06e1c63 13-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Debug: Dump only targetted style

Change-Id: Id7c5a4b5d0880520e1fea05e5a31d398946c5f05
ebug.cpp
ebug.h
lag.cpp
lag.h
ain.cpp
bdaa092a193d8ddccbd9ad8434be97878e6ded59 09-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: inferred style parent processing

Change-Id: I8fbc4feef16b6039cf4c526fcfb767dc75a9c131
inaryResourceParser.cpp
inker_test.cpp
ain.cpp
esourceParser.cpp
esourceParser_test.cpp
esourceValues.cpp
esourceValues.h
mlFlattener.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
ndroid.mk
inaryResourceParser.cpp
ebug.cpp
ebug.h
avaClassGenerator.cpp
avaClassGenerator_test.cpp
inker.cpp
inker.h
inker_test.cpp
ain.cpp
ockResolver.h
esourceTable.cpp
esourceTable.h
esourceTableResolver.cpp
esourceTableResolver.h
esourceValues.cpp
esourceValues.h
ableFlattener.cpp
mlFlattener.cpp
mlFlattener.h
d1808401ca3bfd6b6b9a975c1e739b194d18f849 05-May-2015 Prerepa Viswanadham <dham@google.com> Merge changes from topic 'mwd-merge-050415' into mnc-dev

* changes:
Merge commit 'b6f59f4' into master_merge
Merge commit 'f6db0ce' into master_merge
Merge commit '17455a3' into master_merge
Merge commit 'b4d5b32' into master_merge
Merge commit 'a1a2fa7' into master_merge
Merge commit '8dfdb98' into master_merge
Merge commit 'eba66c3' into master_merge
6d8e4c48f94f36963a25e357ff960ee519cf0e1b 01-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Add option to generate static library

Difference between normal app and static library is that
the R file uses non-final fields, and the extra chunks added
by AAPT2 remain in the final APK.

Change-Id: I61416387ca9bb3c21857ff7cfab5847ac3edf57a
ain.cpp
ata/lib/Makefile
838a68705bc79527e592265371cbe4d8e888d9d9 01-May-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Include package name of attributes in styleable from another package

Change-Id: I44f902e297238e7ee4ae27c02aaaf9e148652d2a
avaClassGenerator.cpp
avaClassGenerator_test.cpp
ockResolver.h
esolver.h
esource.h
esourceTableResolver.h
mlFlattener_test.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
inaryResourceParser.cpp
inaryResourceParser.h
inker.cpp
inker.h
esourceTable.cpp
esourceTable.h
esourceTypeExtensions.h
esourceValues.cpp
esourceValues.h
ableFlattener.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
ndroid.mk
inaryResourceParser.cpp
inaryResourceParser.h
inaryXmlPullParser.cpp
inaryXmlPullParser.h
indingXmlPullParser.cpp
indingXmlPullParser.h
lag.cpp
avaClassGenerator_test.cpp
inker.cpp
inker.h
inker_test.cpp
ain.cpp
anifestValidator.cpp
aybe.h
aybe_test.cpp
esolver.cpp
esolver.h
esource.h
esourceParser.cpp
esourceParser.h
esourceParser_test.cpp
esourceTable.cpp
esourceTableResolver.cpp
esourceTableResolver.h
copedXmlPullParser.cpp
copedXmlPullParser.h
ourceXmlPullParser.cpp
ourceXmlPullParser.h
tringPool.cpp
tringPool.h
ableFlattener.cpp
til.cpp
til.h
liffXmlPullParser.cpp
liffXmlPullParser.h
mlFlattener.cpp
mlFlattener.h
mlFlattener_test.cpp
mlPullParser.h
ata/lib/res/values/styles.xml
ata/res/layout/main.xml
ata/res/values/styles.xml
231e054dfd9dfc2e51ecd41dca5e8d93ae648954 29-Apr-2015 Narayan Kamath <narayan@google.com> Add a libbase static depedency for aapt2.

Required by libziparchive.

Change-Id: Ifa33c9e44ebd583cf58b8a1239061c613fde92bc
ndroid.mk
d5c4f8723c2b2c85b588fa07a5d4e7afb671d257 21-Apr-2015 Adam Lesinski <adamlesinski@google.com> Properly mangle file names

Change-Id: I49c0f82e8c06f056198eb64b8369d83403b74321
inaryResourceParser.cpp
ain.cpp
ableFlattener.cpp
ableFlattener.h
ipEntry.cpp
ipEntry.h
ipFile.cpp
ipFile.h
ata/Makefile
ata/lib/Makefile
ata/lib/res/layout/main.xml
ata/lib/res/raw/hello.txt
5886a92eb6dde5a406a62926f2914a908ca18d35 16-Apr-2015 Adam Lesinski <adamlesinski@google.com> Fix up the command line, add flags.

Change-Id: I420bd0212fc7541668bd095b88295564d3d11f6c
lag.cpp
lag.h
ain.cpp
769de98f2dd41bfe39a1c9f76aefd1ad58942733 11-Apr-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Add library support

Change-Id: I307f56d9631784ab29ee4156d94886f9b2f25b30
ndroid.mk
inaryResourceParser.cpp
inaryResourceParser.h
inaryXmlPullParser.cpp
inaryXmlPullParser.h
lag.cpp
lag.h
avaClassGenerator.cpp
avaClassGenerator.h
avaClassGenerator_test.cpp
inker.cpp
inker_test.cpp
ain.cpp
ameMangler.h
ameMangler_test.cpp
ng.cpp
ng.h
esChunkPullParser.h
esolver.cpp
esolver.h
esource.h
esourceParser.cpp
esourceParser.h
esourceParser_test.cpp
esourceTable.cpp
esourceTable.h
esourceTable_test.cpp
esourceValues.cpp
esourceValues.h
tringPool.cpp
tringPool.h
tringPool_test.cpp
mlFlattener.cpp
mlFlattener.h
mlFlattener_test.cpp
ipEntry.cpp
ipEntry.h
ipFile.cpp
ipFile.h
ata/Makefile
ata/lib/AndroidManifest.xml
ata/lib/Makefile
ata/lib/res/values/styles.xml
ata/res/values/styles.xml
rocess.dot
c7e2432dec68431d4dd9a8466f47a5761197d00a 11-Apr-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Create Makefile

Makefile that uses zip for assembling the final APK. This is temporary and
helps speed up the rest of development.

Has to add a new 'manifest' phase that simply compiles the AndroidManifest.xml.
Manifests are handled differently and must be validated.

Change-Id: I0d8255b3ad0d0b0a322683077e3331ca93e37fa0
ain.cpp
ata/Makefile
4d3a987694f6f6b95d8a0f1542618223ce253e6d 10-Apr-2015 Adam Lesinski <adamlesinski@google.com> AAPT2: Adding basic binding support

This is incomplete. Still requires:

- filling in layout information in the resulting .bind.xml
- processing elements with <view class=""/>
- processing imports

Change-Id: Ie5d4c5e6435591bbed3248129a548736244894eb
ndroid.mk
indingXmlPullParser.cpp
indingXmlPullParser.h
indingXmlPullParser_test.cpp
iles.cpp
iles.h
ain.cpp
ng.cpp
til.cpp
til.h
til_test.cpp
ata/res/layout/main.xml
98aa3ad6e46e3b0270785c8b3f9798e37e8af140 06-Apr-2015 Adam Lesinski <adamlesinski@google.com> Add PNG and 9-patch support

Change-Id: I9ecdfdf82b82d59084490da518e167e256afd5f2
ndroid.mk
lag.cpp
lag.h
ain.cpp
ng.cpp
ng.h
ata/res/drawable/icon.png
ata/res/drawable/test.9.png
feefeb4f308261907f5ea5705d66736d45633a27 03-Apr-2015 Adam Lesinski <adamlesinski@google.com> AAPT2 statically link libz on Windows builds

Change-Id: I2abf47273173c470c04e00a54aa619fe1ce0e745
ndroid.mk
ca2fc353c2b07e24e297fdc8426c7abd601d908b 03-Apr-2015 Adam Lesinski <adamlesinski@google.com> Fix windows build of AAPT2

Change-Id: Ib8e1a4322510b582e9600a08d3118842c9abc73c
igBuffer.h
inaryResourceParser.cpp
iles.cpp
iles.h
avaClassGenerator.cpp
inker.cpp
ain.cpp
anifestValidator.cpp
esource.h
esourceParser.cpp
esourceTable.cpp
tringPool_test.cpp
ableFlattener.cpp
til.h
liffXmlPullParser.h
mlFlattener_test.cpp
mlPullParser.h
1fce4f9c898d8053f4721e0f6ed85c9d07589f24 03-Apr-2015 Greg Hackmann <ghackmann@google.com> aapt2: fix definition of G in Util.h

Change-Id: Icbefa425cf543f130deabab9e2e2e6c13ab672d3
Signed-off-by: Greg Hackmann <ghackmann@google.com>
til.h
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
ndroid.mk
ppInfo.h
igBuffer.cpp
igBuffer.h
igBuffer_test.cpp
inaryResourceParser.cpp
inaryResourceParser.h
ompat_test.cpp
onfigDescription.cpp
onfigDescription.h
onfigDescription_test.cpp
iles.cpp
iles.h
avaClassGenerator.cpp
avaClassGenerator.h
avaClassGenerator_test.cpp
inker.cpp
inker.h
inker_test.cpp
ocale.cpp
ocale.h
ocale_test.cpp
ogger.cpp
ogger.h
ain.cpp
anifestParser.cpp
anifestParser.h
anifestParser_test.cpp
anifestValidator.cpp
anifestValidator.h
aybe.h
aybe_test.cpp
esChunkPullParser.cpp
esChunkPullParser.h
esolver.cpp
esolver.h
esource.cpp
esource.h
esourceParser.cpp
esourceParser.h
esourceParser_test.cpp
esourceTable.cpp
esourceTable.h
esourceTable_test.cpp
esourceTypeExtensions.h
esourceValues.cpp
esourceValues.h
esource_test.cpp
copedXmlPullParser.cpp
copedXmlPullParser.h
copedXmlPullParser_test.cpp
dkConstants.cpp
dkConstants.h
ource.h
ourceXmlPullParser.cpp
ourceXmlPullParser.h
tringPiece.h
tringPiece_test.cpp
tringPool.cpp
tringPool.h
tringPool_test.cpp
ableFlattener.cpp
ableFlattener.h
til.cpp
til.h
til_test.cpp
liffXmlPullParser.cpp
liffXmlPullParser.h
liffXmlPullParser_test.cpp
mlFlattener.cpp
mlFlattener.h
mlFlattener_test.cpp
mlPullParser.h
ata/AndroidManifest.xml
ata/res/drawable/image.xml
ata/res/layout/main.xml
ata/res/values-v4/styles.xml
ata/res/values/colors.xml
ata/res/values/styles.xml
ata/res/values/test.xml
ata/resources.arsc
ata/resources_base.arsc
ata/resources_hdpi.arsc
rocess.dot
ublic_attr_map.py
odo.txt