aapt2 daemon
. Command line arguments are separated by newlines, with an empty line signalling the end of a command. Sending EOF (Ctrl+D)
to the daemon will exit.aapt
, which will take the last definition as the sole definition. A warning is logged if such a scenario occurs. (bug 64472942)aapt2 ...
--custom-package
was not honored when writing Manifest.java. (bug 62826426)<key-sets>
and its nested tags to the allowed set of XML tags in AndroidManifest.xml. (bug 62839863)aapt2 ...
<add-resource>
did not compile. (bug 38355988)%n
in a string resource was interpreted as a format argument. (bug 37132275)""
or @null
, depending on the accepted formats. (bug 38425050)<item>
with no format attribute were changed to accept all resource types. (bug 62260121)<layout>
element under <activity>
in AndroidManifest.xml. (bug 62189611)--no-version-vector
did not apply to pathInterpolator
and objectAnimator
. (bug 62211148)<style>
would not be merged, and would replace the original resource instead. This fix brings behavior in-line with AAPT. (bug 38355988)aapt2 link ...
android:paddingHorizontal
degrades to android:paddingLeft
and android:paddingRight
.aapt2 compile ...
--no-crunch
option to avoid processing PNGs during the compile phase. Note that this shouldn't be used as a performance optimization, as once the PNG is processed, its result is cached for incremental linking. This should only be used if the developer has specially pre-processed the PNG and wants it byte-for-byte identical to the input. NOTE: 9-patches will not be processed correctly with this flag set.aapt2 link ...
aapt2 optimize ...
aapt2 optimize ...
id
. It ignores their contents and interprets them as a sentinel id
type. This was added to support existing apps that build with their id
types as map values. AAPT and AAPT2 always generate a simple value for the type ID
, so it is unclear how some these apps are encoded.aapt2 link ...
aapt2 link ...
aapt2 link ...
--enable-sparse-encoding
flag.aapt2 optimize ...
--target-densities
list of densities.link
phase but this covers apps built with aapt
).--enable-sparse-encoding
flag if possible (minSdkVersion >= O or resource qualifier >= v26).aapt2 link ...
--shared-lib
flag. Build a client of a shared library by simply including it via -I
.aapt2 compile ...
aapt2
configVarying
resource type.<bag>
tag and treat as <style>
regardless of type.<feature-group>
manifest tag verification.<meta-data>
tag support to <instrumentation>
.aapt2 link ...
--no-version-transitions
to disable automatic versioning of Transition XML resources.aapt2 link ...
<meta-data>
tags in <manifest>
.aapt2
font
resource type.aapt2 compile ...
aapt link ...
--no-resource-deduping
.aapt2 link ...
--split path/to/split.apk:<config1>[,<config2>,...]
.aapt2 compile ...
--pseudo-localize
option is specified.--legacy
is specified.--dir
is specified. This will emit a zip of compiled files, one for each file in the directory. The directory must follow the Android resource directory structure (res/values-[qualifiers]/file.ext).aapt2 link ...
--no-auto-version
.