Added dominator tree analysis of resource configurations for each resource entry to allow deduping of resource entries if: 1. The configuration for the resource entry's value is dominated by a configuration with an equivalent entry value. 2. All compatible configurations for the entry (those not in conflict and unrelated by domination with the configuration for the entry's value) have an equivalent entry value. Bug: 30051199 Test: make libaapt2_tests && libaapt2_tests Change-Id: I66468d3014a2d6097a94b039ac1028f9f461c7d3
1.8 KiB
1.8 KiB
Android Asset Packaging Tool 2.0 (AAPT2) release notes
Version 2.2
aapt2 compile ...
- Added support for inline complex XML resources. See https://developer.android.com/guide/topics/resources/complex-xml-resources.html
aapt link ...
- Duplicate resource filtering: removes duplicate resources in dominated configurations
that are always identical when selected at runtime. This can be disabled with
--no-resource-deduping
.
Version 2.1
aapt2 link ...
- Configuration Split APK support: supports splitting resources that match a set of
configurations to a separate APK which can be loaded alongside the base APK on
API 21+ devices. This is done using the flag
--split path/to/split.apk:<config1>[,<config2>,...]
. - SDK version resource filtering: Resources with an SDK version qualifier that is unreachable at runtime due to the minimum SDK level declared by the AndroidManifest.xml are stripped.
Version 2.0
aapt2 compile ...
- Pseudo-localization: generates pseudolocalized versions of default strings when the
--pseudo-localize
option is specified. - Legacy mode: treats some class of errors as warnings in order to be more compatible
with AAPT when
--legacy
is specified. - Compile directory: treats the input file as a directory when
--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 ...
- Automatic attribute versioning: adds version qualifiers to resources that use attributes
introduced in a later SDK level. This can be disabled with
--no-auto-version
. - Min SDK resource filtering: removes resources that can't possibly be selected at runtime due to the application's minimum supported SDK level.