What's new
- Bundletool will no longer keep a list of extensions of files which must remain uncompressed by default in the generated APKs; it's up to the build system calling
build-bundle
to specify those files in the BundleConfig. Applies only to App Bundles built with version 0.8.0+ of bundletool. For users of the Android Gradle Plugin, this is a no-op since AGP already passes this list of files to bundletool. build-apks
command now signs the APKs by default with the debug keystore (when found) if--ks
flag is not passed. The debug keystore must be nameddebug.keystore
under the.android
subdirectory of one of the following locations:$ANDROID_SDK_HOME
, user home directory or$HOME
.- The
--modules
flag from theextract-apks
andinstall-apks
commands now supports the special value_ALL_
to extract/install all modules (without having to enumerate them all). - Resources can now be pinned in the master APK by specifying the resource IDs in the BundleConfig (see config.proto).
- The
split
attribute is no longer added automatically by Bundletool, it must be already present in the AndroidManifest.xml. Note that in the original AndroidManifest.xml, this attribute is namedfeatureSplit
(it is later renamed by aapt2). For users of the Android Gradle Plugin, this is a no-op since AGP adds it automatically.
Bugs fixes
dump manifest
command no longer fails when namespaces have been stripped from the manifest.- Fixed an issue where we did not remove activities and services from non instant modules in the instant base manifest.
dump resources
command now escapes the line breaks, quotes and backslashes from the strings of the values of resources.