Skip to main content

Apktool 2.9.1

Connor Tumbleson
Maintainer of Apktool
  • [#3362] Add support for building on Java 21.
  • [#3425] Add test for isAccessibilityTool.
  • [#3428] Add support for Android QBR2.
  • [#3399] Fix regression with api-level not passing to baksmali. (Thanks JoshMiers-FS)
  • [#3378] Fix issue with docker building closed prs.
  • [#3400] Fix issue with duplicated attribute names in styles.
  • [#3416] Fix issue with writing null value resources.
  • [#3421] Fix issue with aapt2 falling on private resources.
  • [#3427] Fix issue with treating warnings as errors in aapt2.
  • [#3377] Remove Docker published package.
  • [#3376] Upgrade Gradle to 8.4. (Thanks ArjunaKumarMohanta)
  • [#3414, #3453] Upgrade commons-io to 2.15.1.
  • [#3413] Upgrade commons-cli to 1.6.0.
  • [#3443] Upgrade commons-lang3 to 3.14.0.
  • [#3414] Upgrade commons-text to 1.11.0.
  • [#3454] Upgrade actions/setup-java to 4.
  • [#3384] Upgrade docker/build-push-action to v5.
  • [#3445] Upgrade gradle/gradle-build-action to 2.10.0.
  • [#3386] Upgrade docker/setup-buildx-action to v3.
  • [#3385] Upgrade docker/login-action to v3.
  • [#3444] Upgrade proguard/gradle to 7.4.1.
success

Download now at Bitbucket, Maven

  • md5 - 40705d4cf2fd3b4f605872e993f0d4a3
  • sha256 - de7ce8aa109acb649e7f69cfe91030ffc20dbcc46edd8abbf6c2d1e36cfccd7b

This post was released with commentary at: https://connortumbleson.com/2023/12/06/apktool-v2-9-1-released/

Apktool 2.9.0

Connor Tumbleson
Maintainer of Apktool
caution

This release contains an updated internal framework file and changed the default aapt binary to version 2.

  • apktool empty-framework-dir to remove the old file.
  • --use-aapt1 to return to old behavior (aapt1) during compilation.
  • Add manual YAML implementation to drop SnakeYAML dependency. #3145 (Thanks sv99)
  • Add Android 14 framework support. #3202
  • Add Resource Modes to allow for more control over resource decoding. #2836
  • Add Docker image. #3351 (Thanks Fmstrat)
  • Add support for compactly packed resources. #3366
  • Add support for 16bit offset entries in resource table. #3367
  • Add support for grammatical gender. #3369
  • Fix regression with detection of sparse resource table. #3199
  • Fix poisoning of sparse detection via sparse framework. #3298
  • Fix over-reading the Res Config Flags if size is larger than known. #3205
  • Fix improperly decoding attribute and arrays. #2806
  • Fix corruption of resource table when aapt2 is used. #3346
  • Fix decoding application with larger chunk header size than used. #2989
  • Fix decoding application with entries offset that resolved to NO_ENTRY (-1). #1874
  • Fix decoding application with larger axml namespace than known. #2587, #2863
  • Fix decoding application with misleading number of end namespace chunks. #2070
  • Fix decoding application with empty resource table. #2701
  • Fix decoding application with duplicate namespaces. #2664
  • Fix decoding application with missing namespace on system resources. #2972, #2420
  • Fix decoding application with string block with more string entries than strings. #3236
  • Fix decoding application with unknown files that exceed file name length limits. #3238
  • Fix decoding application with duplicate smaller res entries. #2824
  • Fix decoding application with styled string with span outside length of string. #2829
  • Fix decoding application from Android Milestone (pre 1.0) builds. #3311
  • Fix "disableZip64ExtraFieldValidation" patch by adding to helper scripts. #3198
  • Fix changing values of platformBuildVersionCode and platformBuildVersionName in apktool.yml. #3204
  • Fix ci build system to properly archive test builds post Kotlin migration. #3282
  • Fix Windows helper scripts to properly handle /c. #2973 (Thanks maksz42)
  • Change aapt2 to be default build tool. #3368
  • Change build system to ignore missing javadoc blocks. #3222 (Thanks sv99)
  • Change -c/--copy-original to no longer be deprecated. #2129
  • Change frequency of dummy resources to be less often after proper disassembly of resources. #2683, #2104
  • Change build system configuration to Kotlin DSL. #3249
  • Change build system to leverage Gradle version catalog. #3353
  • Change system to no longer generate APKTOOL_DUMMY_* resources. #3258
  • Change verbose mode to no longer print out method names. #3310
  • Refactor out specific manifest file decoder for empty resource table. #3171 (Thanks sv99)
  • Refactor out duo logic with decoders during resource parser. #3211 (Thanks sv99)
  • Refactor for specific method operations for loading full resource table. #3217 (Thanks sv99)
  • Refactor ApkDecoder for leveraging ApkInfo for file and unknown files. #3242 (Thanks sv99)
  • Refactor ResAttrDecoder into AXmlResourceParser. #3243 (Thanks sv99)
  • Refactor Gradle validation job to only run if gradle/wrapper/gradle-wrapper.jar is modified. #3228 (Thanks ArjunaKumarMohanta)
  • Upgrade Gradle to 8.3.0 #3275 (Thanks ArjunaKumarMohanta)
  • Upgrade @actions/checkout to v4. #3327
  • Upgrade apache.commons/lang3 to 3.13.0 #3240
  • Upgrade apaches.common-io to 2.14.0 #3358
  • Upgrade gradle/gradle-build-action to 2.9.0 #3213, #3241, #3285, #3316, #3359
  • Upgrade gradle/wrapper-validation-action to 1.1.0 #3214
  • Upgrade xmlunit:xmlunit:1.6 to org.xmlunit:xmlunit-legacy:2.9.1 #3235
  • Upgrade com.github.johnrengelman.shadow to 8.1.1 #3259
success

Download now at Bitbucket, Maven

  • md5 - 246e7208cfb92c73d21e4e6a8909dda1
  • sha256 - e5ecf759297b845be64a3a5145ccc372db905b15a801a22ea1c91ee03c4c7a65
info

This release has an updated Windows helper script.

This post was released with commentary at: https://connortumbleson.com/2023/10/08/apktool-v2-9-0-released/