A cross-platform suite of scripts and utilities for working with APK files
- adb-pull - pull an apk from a connected device to
input apk
- adb-lp-pull - pull all LP modified files to the project directory
- clean - clean the
project
directory
- apktool-decode - decode the
input apk
tosources
- baksmali - decompile the
input dex
tosmali
- aapt-dump - dump Android-specific data (resources, manifest) from the
input apk
- enjarify - convert the
input apk
to ajar
- dexify - convert the
input jar
to adex
- apktool-build - build the
patched apk
from previously decodedsources
- smali - compile the
smali
to apatched dex
- sign - sign the
patched apk
to asigned+patched apk
- adb-install - install the
patched+signed apk
- adb-lp-push - push
$1
to the LP data directory
Clone this repo and use the .sh
scripts at its root. For a clean workflow, all scripts operate under the project
directory. Inside there, you can place:
app.apk
- the input apkapp.jar
- the input jarclasses.dex
- the input dex
- adb-pull > apktool-decode > make changes > apktool-build > sign > adb-install
You need bash installed and accessible under /bin/bash
. On Windows you can use WSL, the scripts will detect that and still use the native Windows binaries
If you want to use the aapt-*
and adb-*
scripts, then you also need to install the Android SDK. In Ubuntu, there is an official package android-sdk
. Make sure the following directories are added to your PATH
:
android-sdk/platform-tools/
android-sdk/build-tools/xx.x.x/
(preferably the most up-to-date one)