2016-07-26 12:55:51 -07:00
|
|
|
# Android Asset Packaging Tool 2.0 (AAPT2) release notes
|
|
|
|
|
2017-03-03 16:33:26 -08:00
|
|
|
## Version 2.10
|
|
|
|
### `aapt2 link ...`
|
|
|
|
- Add ability to specify package ID to compile with for regular apps (not shared or static libs).
|
|
|
|
This package ID is limited to the range 0x7f-0xff inclusive. Specified with the --package-id
|
|
|
|
flag.
|
|
|
|
- Fixed issue with <plurals> resources being stripped for locales and other configuration.
|
|
|
|
- Fixed issue with escaping strings in XML resources.
|
|
|
|
|
2017-02-21 14:22:30 -08:00
|
|
|
## Version 2.9
|
|
|
|
### `aapt2 link ...`
|
|
|
|
- Added sparse resource type encoding, which encodes resource entries that are sparse with
|
|
|
|
a binary search tree representation. Only available when minSdkVersion >= API O or resource
|
|
|
|
qualifier of resource types is >= v26 (or whatever API level O becomes). Enabled with
|
|
|
|
`--enable-sparse-encoding` flag.
|
|
|
|
### `aapt2 optimize ...`
|
|
|
|
- Adds an optimization pass that supports:
|
|
|
|
- stripping out any density assets that do not match the `--target-densities` list of
|
|
|
|
densities.
|
|
|
|
- resource deduping when the resources are dominated and identical (already happens during
|
|
|
|
`link` phase but this covers apps built with `aapt`).
|
|
|
|
- new sparse resource type encoding with the `--enable-sparse-encoding` flag if possible
|
|
|
|
(minSdkVersion >= O or resource qualifier >= v26).
|
|
|
|
|
2017-02-16 12:05:42 -08:00
|
|
|
## Version 2.8
|
|
|
|
### `aapt2 link ...`
|
|
|
|
- Adds shared library support. Build a shared library with the `--shared-lib` flag.
|
|
|
|
Build a client of a shared library by simply including it via `-I`.
|
|
|
|
|
2017-01-06 15:20:04 -08:00
|
|
|
## Version 2.7
|
2017-02-16 12:05:42 -08:00
|
|
|
### `aapt2 compile ...`
|
2017-01-06 15:20:04 -08:00
|
|
|
- Fixes bug where psuedolocalization auto-translated strings marked 'translateable="false"'.
|
|
|
|
|
2017-01-31 13:47:27 -08:00
|
|
|
## Version 2.6
|
|
|
|
### `aapt2`
|
|
|
|
- Support legacy `configVarying` resource type.
|
|
|
|
- Support `<bag>` tag and treat as `<style>` regardless of type.
|
|
|
|
- Add `<feature-group>` manifest tag verification.
|
|
|
|
- Add `<meta-data>` tag support to `<instrumentation>`.
|
|
|
|
|
2017-01-18 20:42:17 +09:00
|
|
|
## Version 2.5
|
|
|
|
### `aapt2 link ...`
|
|
|
|
- Transition XML versioning: Adds a new flag `--no-version-transitions` to disable automatic
|
|
|
|
versioning of Transition XML resources.
|
|
|
|
|
2016-12-05 19:48:20 -08:00
|
|
|
## Version 2.4
|
|
|
|
### `aapt2 link ...`
|
|
|
|
- Supports `<meta-data>` tags in `<manifest>`.
|
|
|
|
|
2016-10-19 18:37:53 -07:00
|
|
|
## Version 2.3
|
|
|
|
### `aapt2`
|
|
|
|
- Support new `font` resource type.
|
|
|
|
|
2016-09-06 17:34:06 -07:00
|
|
|
## Version 2.2
|
|
|
|
### `aapt2 compile ...`
|
|
|
|
- Added support for inline complex XML resources. See
|
|
|
|
https://developer.android.com/guide/topics/resources/complex-xml-resources.html
|
2016-09-06 15:16:49 -07:00
|
|
|
### `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`.
|
2016-09-06 17:34:06 -07:00
|
|
|
|
2016-08-11 13:39:24 -07:00
|
|
|
## 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.
|
|
|
|
|
2016-07-26 12:55:51 -07:00
|
|
|
## 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.
|