Skip to content

Releases: google/bundletool

0.12.0

20 Dec 11:55
Compare
Choose a tag to compare

What's new

  • Texture compression format targeting now supports stripping prefixes from directory names.
  • Added support for .pb manifest for APEX format.
  • Support for building test-only APKs through new flag --test-only. #88

Bugs fixed

  • Fixed metadata of APKs built with standalone bundletool. #94
  • Fixed path matcher that crashed in some cases. #100
  • Make order of the targeting values/alternatives deterministic in the table of contents.

0.11.0

07 Nov 15:51
Compare
Choose a tag to compare

What's new

  • APKs with minSdkVersion >= 22 are now signed only with v2 signing scheme, thus removing the jar signing files under META-INF.
  • Added support for conditional modules based on maxSdkVersion.
  • Preparing support for targeting directories by texture compression format.

Fixed bugs

  • 64-bit libraries are also stripped from the universal APK in the present of .bc (bitcode) files since the Android platform does not support 64-bit with them.

0.10.3

17 Sep 13:55
Compare
Choose a tag to compare

What's new

  • Added validation to disallow feature modules with minSdk lower than base module.

0.10.2

19 Jul 15:01
Compare
Choose a tag to compare

What's new

  • Preliminary support for texture compression format splits.

0.10.1

12 Jul 10:47
Compare
Choose a tag to compare

What's new

  • Set isSplitRequired attribute in AndroidManifest.xml to prevent the installation of incomplete set of APKs when installing only the base would lead to a crash.

Bug fixes

  • Unexpected output of 'pm list features' command (#81)

0.10.0

17 Jun 11:32
Compare
Choose a tag to compare

What's new

  • Improve efficiency of processing bundles with assets.
  • Add bundletool dump command to dump BundleConfig (see command help for details).
  • Update to Truth 0.45

Bug fixes

  • #27 - Use adb if present in system PATH.
  • #63 - Allow BundleConfig and DeviceSpec to be passed as JSON files via Java API.
  • #73 - Prefer config values with specific density over equivalents with implicit density.
  • Remove bundletool check that resources should not be directly under res/.
  • Native libraries are no longer left uncompressed if the app is installable on external storage due to a bug in ASEC storage. APKs generated for Android P+ are not affected.

0.9.0

11 Mar 18:18
Compare
Choose a tag to compare

What's new

  • Flag --universal no longer supported; replaced with --mode=universal (same behavior)
  • New ability to keep some resources in the base APK, even when splitting by screen-density or language is enabled. This is a feature of the build-bundle command used by build systems.
  • Bundletool dependencies updated to more recent versions.
  • Respect values of minSdkVersion/maxSdkVersion to avoid generating unnecessary APKs.
  • Finalizing the generation of APKs for the system image (--mode=system).

Bug fixes

  • A few fixes related to the "dump resources" command when printing values. Format of the output slightly changed to print the type before the value, and now quoting the value similarly to aapt2.

0.8.0

14 Jan 21:00
Compare
Choose a tag to compare

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 named debug.keystore under the .android subdirectory of one of the following locations: $ANDROID_SDK_HOME, user home directory or $HOME.
  • The --modules flag from the extract-apks and install-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 named featureSplit (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.

0.7.2

07 Dec 10:26
Compare
Choose a tag to compare

What's new

  • Flag --universal replaced with --mode=universal (--universal will be removed in a future release).
  • New support for generating standalone APKs to be put on the system image (--mode=SYSTEM)
  • New support for generating APEX files.

Bugs fixed

  • 64-bit libraries no longer included in generated APKs if 32-bit RenderScript bitcode is present (not supported by Android platform).

0.7.1

19 Nov 17:09
Compare
Choose a tag to compare

What's new

  • dump command now able to print resources of an Android App Bundle (see command help).
  • Allow to install APK Sets with a lower version code, using --allow-downgrade flag (#32).