Apktool is a utility for decompiling and recompiling Android APKs. It extracts DEX (Dalvik Executable) bytecode into smali — a human-readable representation of the DEX format.

To view .dex and smali files, I use the 920 Text Editor. It’s my personal favourite.


Prerequisite: Root access is required.

Step 1: Download Apktool from:

https://code.google.com/archive/p/apktool/downloads

This is a zip file. Extract it to the root of your default storage — not inside a subdirectory.

For example:

  • If your default write disk is phone storage: /mnt/phonestorage/apktool/
  • If it’s SD card: /mnt/sdcard/apktool/

Step 2: Inside the extracted folder, you’ll find Apktool.apk. Install it.

Step 3: Open the app and allow root permission.

Step 4: Using a root-capable file manager (like ES File Explorer with Root Explorer enabled), navigate to:

/system/framework/framework.apk

Step 5: Copy framework.apk into your Apktool folder.

Step 6: Open Apktool, tap on framework.apk, and select Import as Framework.

Step 7: Drop any APK you want to decompile into your working folder. Tap on it and select Decompile All.

A new folder will be created containing the decompiled APK files — resources, smali code, and the AndroidManifest.xml.

Step 8: Make your changes to the decompiled files. When done, tap on the decompiled folder and select Recompile All.

Step 9: Before installing the modified APK, it must be signed. Tap on the recompiled APK and press Sign APK.

A new file will be created with a _sign.apk suffix. Install that file.

You now have a working APK workstation on your Android device. Doubts? Comment below!