> cat /dev/github | grep security-tools
discovered 30 Mar 2026

dpt-shell

Java ★ 915 via github-topic
→ View on GitHub

AI Summary: dpt-shell is an Android Dex protection tool designed to hollow out method implementations within DEX files, facilitating runtime reconstruction for enhanced protection of Android applications. Primary use cases include securing APKs and AABs against reverse engineering, with notable features such as customizable protection configurations, exclusion of specific ABIs, and the ability to dump DEX code items for analysis.


README

dpt-shell

English | 简体中文

dpt-shell is an Android Dex protection shell that hollows out Dex method implementations and reconstructs them at runtime.

Usage

Quick uses

Go to Releases download executable.zip and unzip it, run the follow command lines in terminal:

java -jar dpt.jar -f /path/to/android-package-file

Manual builds

git clone --recursive https://github.com/luoyesiqiu/dpt-shell
cd dpt-shell
./gradlew assemble
cd executable
java -jar dpt.jar -f /path/to/android-package-file

Command line options

usage: java -jar dpt.jar [option] -f <package_file>
 -c,--protect-config <arg>   Protect config file.
                             
    --debug                  Make package debuggable.
    --disable-acf            Disable app component factory(just use for
                             debug).
    --dump-code              Dump the code item of DEX and save it to
                             .json files.
 -e,--exclude-abi <arg>      Exclude specific ABIs (comma separated, e.g.
                             x86,x86_64).
                             Supported ABIs:
                             - arm       (armeabi-v7a)
                             - arm64     (arm64-v8a)
                             - x86
                             - x86_64
 -f,--package-file <arg>     Need to protect android package(*.apk, *.aab)
                             file.
 -K,--keep-classes           Keeping some classes in the package can
                             improve the app's startup speed to a certain
                             extent, but it is not supported by some
                             application packages.
    --noisy-log              Open noisy log.
 -o,--output <arg>           Output directory for protected package.
 -r,--rules-file <arg>       Rules file for class names that will not be
                             protected.
 -S,--smaller                Trade some of the app's performance for a
                             smaller app size.
 -v,--version                Show program's version number.
 -x,--no-sign                Do not sign package.

Notice

This project has not too many tests, be careful use in prod environment. Otherwise, all consequences are at your own risk.

Dependency or use follows project code