GUI for apktool, signapk, zipalign and baksmali utilities.
It is a tool for reverse engineering 3rd party, closed, binary Android apps. It can decode resources to nearly original form and rebuild them after making some modifications; it makes possible to debug smali code step by step. Also it makes working with app easier because of project-like files structure and automation of some repetitive tasks like building apk, etc.
https://github.com/AndnixSH/APKToolGUI/releases
- Windows 7 32-bit/64-bit and above
- Java Runtime Environment/Java SE Development Kit 8 and above. Highly recommended to use 64-bit version if your system is 64-bit
- .NET Framework 4.8 (Windows 10 and above have it preinstalled)
- Decompile APK
- Decompile and merge split APK/XAPK/APKS/ZIP/APKM using build-in split merging and APKEditor.jar (Default)
- Compile APK
- Sign APK
- Zipalign APK
- Adb
- Framework
- Drag and drop
- APK info
- Log output
- All features from Apktool.
- Additional features that can fix some Apktool errors, such as removing DUMMY_APKTOOL, clear framework before decompiling
- Multi language
- Right-click context menu
- Create unsigned APK for Core Patch
- High DPI support
- Long path support (Windows 10 and above)
- Brazilian Portuguese (Incomplete)
- English
- Hungary (Incomplete)
- Russian (Incomplete)
- Chinese Simplified (Incomplete)
If you like to help translate with your native language, I recommend using Visual Studio 2022. You don't need any programming knowledge, you just edit the GUI and the .resx
files
Create new .resx
file under Languages
folder, and Forms/FormXXX.cs/
. To create a new .resx
under Forms/FormXXX.cs/
, open the form and select the form to show the properties. In the properties, scroll down until you see Language, and select any language you would like to translate.
Video tutorial
add-language-VS2022.mp4
If you can't use Visual Studio, you can use translator tools like resxtranslator or RESX Translator automat, but make sure the .resx
file is added to APKToolGUI.csproj, otherwise Visual Studio would not be able to detect it
Make pull request when you are done
Issues with Apktool? Please do cursory search of the issue tracker of Apktool and Baksmali, see if your question may be answered
For Framework/system apps related issues, check on XDA Forum
Some apps may been protected or obfuscated for content protection purposes or against cheaters. Bypassing of such is beyond the scope of this tool, so please DO NOT post an issue regarding to it. This tool does not support bypassing such protections, and never will be!
Anything else, create a new issue
A: Maybe, but it's not easy since Microsoft is dumb for not supporting it for .NET Core, unlike Java FX which supported all platforms. If you know, feel free to open an issue
A: Download Apktool.jar and replace it on Resources folder
A: Download Baksmali.jar/Smali.jar and replace it on Resources folder
A: Simply delete the config.xml file from the directory of the executeable
A: It just a false positive, anti-virus always flag tools/softwares like this as virus. Don't always believe what your anti-virus are telling you. Try to compile the source by yourself and you will see
A: No, that's out of scope of this tool, and I'm not interested.
A: No, apktool is about recompiling, not about converting to other formats. AAB is only used for distributing an application to Play Store. It is not directly installable.
A: No, APK protection is beyond the scope of this tool
A: No, they are also beyond the scope of this tool. I don't condone bypassing such protections
A: Download from Apkcombo's APK downloader, or Apkpure (Choose APK instead XAPK)
A: Sorry, I don't offer support with it.
This project is written in C#
Use Visual Studio 2019 and above. NET Framework 4.8 SDK is required
- AndnixSH
- INF1NUM (Original author of APKToolGUI)
- iBotPeaches (Apktool CLI)
- REAndroid (APKEditor)
- shadow578 (ApksMerger)
Same as Apktool by iBotPeaches, It is NOT intended for piracy and other non-legal uses. It could be used for localizing, adding some features or support for custom platforms and other GOOD purposes. Just try to be fair with authors of an app, that you use and probably like.
The original repo does not have a license but I have permission from the author to use ane distriute this project as open source, without license. He doesn't seems to know much about licensing. For this project, I'll just add license as unlicensed