Skip to main content

Apktool 2.6.0

Connor Tumbleson

This release contains an updated internal framework file.

  • apktool empty-framework-dir to remove the old file.
  • Android 12 Support (#2580)
  • Published to Maven Central (#2529)
  • Upgrade internal aapt/aapt2 to (7691c of frameworks_base)
  • Upgrade to baksmali/smali 2.5.2
  • Upgrade to gradle 7.2 (Thanks Goooler)
  • Upgrade to snakeyaml 1.29 (Thanks Goooler)
  • Upgrade to guava 30.1.1-jre (Thanks Goooler)
  • Upgrade to junit 4.13.2 (Thanks Goooler)
  • Upgrade to commons-lang 3.12.0 (Thanks Goooler)
  • Upgrade to commons-io 2.11.0 (Thanks Goooler)
  • Upgrade to proguard 7.1.1 (Thanks Goooler)
  • Upgrade to license.hierynomus 0.16.1 (Thanks Goooler)
  • Upgrade to jengelman.shadow 7.0.0 (Thanks Goooler)
  • Upgrade to actions/setup-java@v2 (Thanks Goooler)
  • Added .gitattributes (Thanks Goooler)
  • Added support for SDK in Development (Tiramisu, API 32?)
  • Added automatic execution of aapt/aapt2 binaries during CI process to find broken builds.
  • Added automatic ldd/otool -L execution during CI process to identify non-static "fat" aapt/aapt2 builds.
  • Added test execution on Java 15/16 (Now 8-16) during CI process.
  • Upgrade aapt2 with patches for attr-private and remove reserved pkgIds. (Thanks MrIkso)
  • Upgrade aapt1 with patches for a static binary on Mac arch.
  • Add lazy init for ResTable for optimizations. (#2604) / (Thanks IgorEisberg)
  • Add automatic disassemble/assemble JAR files without specifying api level. (#2605) / (Thanks IgorEisberg)
  • Changed zipslip exceptions to skip file instead of exit on failure. (#2201)
  • Changed dummy resource names to APKTOOL_DUPLICATE_{Type}_{RESID} to prevent starting with numeric (#2229)
  • Changed all Apache License links to https. (#2635) / (Thanks Goooler)
  • Changed getHTML() processor to leverage BundleTool for handling complex string values. (#2632) / (Thanks itaybia)
  • Fix decoding issue requiring specific order of chunks (library/table). (#2099) / (Thanks LoyieKing)
  • Fix decoding issues with code points over > 0x10000. (#2299) / (Thanks Comnir)
  • Fix decoding issues with surrogate pair emojis. (#2546) / (Thanks Comnir)
  • Fix NPE when decoding to a custom non-empty root directory. (#2455)
  • Fix Android 11 dex NPE due to hidden api restriction flags. (#2499) / (Thanks JesusFreke)
  • Fix dummy resources being built as type resources vs item resources. (#2603)
  • Fix numeric string meta-data losing context of data type. (#2611) / (Thanks codylund)
  • Reduce code smell failures. (#2554) / (Thanks matteobaccan)
  • Reduce code smells & correct improper opcode use for baksmali. (#2604) / (Thanks IgorEisberg)
  • Reduce code smells for unused logic, unneeded casting and newer Java language features. (#2636 / (Thanks Goooler)
  • Remove unused targetSdkVersion for source disassemble as value was not populated yet. (#2604) / (Thanks IgorEisberg)
  • Remove duplicate workflows for 1 unified GitHub Action workflow. (#2633) / (Thanks Goooler)

This post was originally released at: and duplicated in part here for historical reasons.