Skip to content

Repository files navigation

PymodAPK - Modern APK Analysis & Patching Tool

Python Version Qt Version License

PymodAPK is a modern, user-friendly GUI application for analyzing, decompiling, and modifying Android APK files. It combines powerful APK analysis capabilities with an intuitive patching interface.

Features

  • Clean, modern UI: Built with PyQt5 and the sleek Fusion style
  • Quick Analysis: Instantly extract basic app info (package name, version, permissions)
  • Deep Analysis: Comprehensive APK inspection powered by Androguard
  • Decompilation: Convert APKs to Smali code using APKTool
  • File Browser: Navigate and edit decompiled code with syntax highlighting
  • Patching System: Inject custom code into specific Android activities and methods
  • Multi-threaded Operations: Keeps the UI responsive during heavy tasks

Screenshots

TODO

Installation

Prerequisites

  • Python 3.8 or higher
  • Java JDK/JRE (required for APKTool and APK signing)

Setup

  1. Clone the repository:
    git clone https://github.com/Gametuto/PymodAPK.git
    cd PymodAPK
  2. Create and activate a virtual environment:
    python -m venv .venv
    # On Windows
    .venv\Scripts\activate
    # On Linux/macOS
    source .venv/bin/activate
  3. Install dependencies:
    pip install -r requirements.txt
  4. Run the application:
    python main.py

Usage Guide

Analyzing an APK

  • Click Select APK File... or use File > Open APK... (Ctrl+O)
  • Quick analysis will run automatically
  • For more details, click Deep Analysis

Decompiling an APK

  • Select an APK file and let the quick analysis complete
  • Click the Decompile button
  • Once done, the File Browser tab will appear

Patching an APK

  • Decompile the APK (see above)
  • Switch to the Patch APK tab
  • Choose the target activity from the dropdown
  • Select the target method (e.g., onCreate)
  • Enter or modify the Smali code to inject
  • Click Apply Patches
  • Wait for patching and rebuilding to finish

Project Structure

PymodAPK/
├── main.py              # Application entry point
├── ui.py                # Main UI definition
├── apk_manager.py       # APK state management
├── apk_analyzer.py      # APK analysis tools
├── apk_patcher.py       # Patching logic
├── file_browser.py      # Decompiled file browser
├── Resources/           # Tool resources
│   ├── ...              # Resources files
└── requirements.txt     # Python dependencies

Core Dependencies

  • PyQt5 – UI framework
  • Androguard – APK analysis library
  • APKTool – APK decompilation and rebuilding
  • APKEditor – Another APK decompilation/rebuilding tool
  • apksigner – Signing APK files
  • AAPT – Android resource packaging tool
  • TODO: – TODO...

Contributing

Contributions are welcome! If you have ideas, suggestions, or improvements, feel free to participate.

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/awesome-feature)
  3. Commit your changes (git commit -m 'Add awesome feature')
  4. Push the branch (git push origin feature/awesome-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License – see the LICENSE file for details.

Acknowledgements

  • Androguard – for powerful APK analysis
  • APKTool – for decompilation and rebuilding
  • PyQt – for the GUI framework
  • TODO – TODO...

Note: PymodAPK is intended for educational purposes and legitimate application modification. ⚠️ Always respect copyright and terms of service.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages