MG1937

ASC: Android Decompilation with R8 and Androguard

ASC is a Python Android decompiler for agents and mobile researchers, built on Androguard and using R8 compiler optimizations to search APKs on demand. It targets fast class extraction and cross-DEX reference searches without full-APK preprocessing.

NewPythonApache-2.0AndroidCLICode Analysis
View on GitHub Compare
Stars
2.5k
Forks
339
Stars, last 30 days
+503
Last commit
today
Contributors
8

Our take

Newless than six months old and changing fast

Health score

62/100

How it is scored
Activity
68
Community
36
Issues
72
Pull requests
70

+503 stars in the last 30 days

ASC is a promising, actively changing Python tool for targeted Android analysis, with strong recent activity but a short track record and much of its development concentrated in one contributor.

Good fit if

  • You need targeted class decompilation or cross-DEX searches in Android APKs, rather than a full decompilation workflow.
  • Your analysis or agent tooling is written in Python and can use Python 3.10 or later.
  • You are comfortable adopting a new project whose recent development and release activity is high, but whose work is largely driven by one person.

Look elsewhere if

  • You need full APK decompilation or prefer a binary-only workflow. The authors direct those users to rust_ASC.
  • Your environment cannot run Python 3.10 or later.
  • Your team needs a mature project with development spread broadly across contributors.
All health signals
Last commit2026-10-16 (today)
Commits, last 90 days100+
Releases, last 12 months3 (latest dev-0.1.2-post2, 2026-10-14)
Contributors8 (top contributor: 79% of commits)
Issues closed, last 90 days10 (typically closed in 1 day)
Pull requests merged, last 90 days30 (typically merged in 0 days)
Project age4 months

Checked on 2026-10-17 with the GitHub API.

Project history

Daily GitHub snapshots since Oct 7, 2026. History covers stars and forks; health signals are not tracked historically.

Selected snapshot

Stars

2,666

Forks

381

Change since Nov 6, 2026: +5 stars·+2 forks

Overview

ASC is a Python Android decompiler for agents and mobile researchers. Built on the Androguard Android reverse-engineering and DEX analysis foundation, it uses R8 compiler optimizations to search APKs directly instead of first building large indexes and cross-references. This is aimed at reducing the time and memory needed to inspect large Android apps.

The workflow is on-demand: search references across DEX entries, locate classes, and decompile selected code. The project also offers manifest extraction and class listing through its CLI. For users who need a binary or full APK decompilation, the authors point to the Rust rewrite, rust_ASC.

Key Features

  • Search for string, type, method, and field references across an APK's DEX entries.
  • Find classes that extend a target class or implement an interface.
  • Locate and decompile a selected class without decompiling the whole APK.
  • List classes across DEX entries, with an optional package or class prefix filter.
  • Decode an APK's Android manifest to XML.
  • Provide a command-line interface that can be integrated into Python workflows.

Use Cases

  • Mobile researchers can find references to a string, method, or field across a large APK before inspecting specific classes.
  • Reverse engineers can extract a target class for focused analysis without waiting for a full application decompilation.
  • Agent developers can add APK class lookup and reference search to Python-based analysis workflows.
  • Analysts comparing multiple APKs can use the CLI's targeted search and extraction operations to avoid loading every app into a full decompiler session.

What you need

Detected in the repository

  • Python >=3.10 (from pyproject.toml)
  • A test suite and automated checks on GitHub Actions

License in plain words

Apache-2.0permissive

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the license, the NOTICE file and a note of your changes
  • Share your changes: no
  • Includes an explicit patent grant from the contributors:

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Install from PyPI:

pip install droidasc

For command examples and options, see the repository README.

Considerations

  • The project is new and changing quickly. Its recent commit, release, and merged-pull-request activity is substantial, but that activity has not yet established a long-term maintenance record.
  • Development is contributor-concentrated, with most contributions coming from one person, which may affect continuity if that contributor's availability changes.
  • ASC is designed for targeted, on-demand analysis. The README describes full APK decompilation as a use case for the Rust rewrite, not this Python project.
  • The project is licensed under Apache-2.0. Teams should review that license's terms when incorporating or distributing it.

Found this useful?

Share it with someone who would like ASC.