PAGES
← all tools
◆ Reverse Engineering

Androguard

v4.1.4 open-source

Androguard is a Python toolkit for Android reverse engineering: inspect APKs, disassemble or decompile DEX code, and hunt references and vulnerabilities.

Summary

Androguard is an open-source reverse-engineering tool, written in Python, for working with Android files, parsing APK, DEX/ODEX, binary XML and resources, and disassembling or decompiling bytecode. It runs as a command-line tool with an accompanying GUIGUIA graphical user interface, controls such as windows, buttons and menus. It lets people use software visually rather than entering commands., and can also be imported as a library for custom analysis scripts, with optional Frida support for dynamic analysis. This puts it in the hands of reverse engineers and malware analysts examining Android applications rather than teams doing broad mobile app security testing. The README lists projects like Cuckoo Sandbox and AppKnox built on top of it, positioning it as infrastructure other Android analysis tools depend on rather than a standalone scanner. First committed in 2010 and still actively maintained, with 136 contributors and a release 77 days ago.

Androguard is a Python toolkit for Android reverse engineering: inspect APKs, disassemble or decompile DEX code, and hunt references and vulnerabilities.

How Androguard helps

What permissions and components does this APK actually declare and use, once the manifest is decoded?

parses the binary XML AndroidManifest directly and prints it in readable form, listing permissions, activities, services and receivers without needing the original source

Is this APK signed the way it claims to be, and by whom?

reads the v1/v2/v3 signing blocks and certificate data directly from the APK and prints the certificate fingerprints and signer details

What do the raw resource and string tables in this app actually contain?

parses the resources.arsc table and compact entries directly, resolving resource IDs to their values without launching the app

How do these hundred APKs compare against each other for triage?

runs the same parsing and analysis session across a directory of samples and stores the results in a database so they can be queried together instead of one file at a time

all 11 features, with the evidence for each →

Languages

Not documented

Features

11 capabilities · 1 backed by code, an API document or a real run

Built from Androguard's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

What Androguard offers you

  • Command-line interface
All capabilities 11 capabilities
Call graph generation verified Builds and outputs a call graph with options to filter by method name or descriptor and to exclude methods with no cross-references. 9 releases · 5 other sources · first seen Feb 2018

release 9 total

  • Supports parsing of APK v3.1 signing blocks, extending signature analysis coverage. v4.1.4 · Jun 2026 · source · release history
  • Adds permission lists for Android API levels 35 and 36, enabling detection of new permissions in modern APKs. v4.1.4 · Jun 2026 · source · release history
  • Supports multiple APK v2 signing blocks with the same ID. v4.1.4 · Jun 2026 · source · release history
  • Supports a custom db_url parameter in Session, allowing analysts to point Androguard at an external database instead of the default. v4.1.3 · Feb 2025 · source · release history
  • Updates androsign to load public_key using oscrypto instead of the previous implementation v4.1.2 · May 2024 · source · release history
  • Adds raw parameter to androguard.misc.AnalyzeDex and AnalyzeODex functions v4.0.1 · Dec 2023 · source · release history

command line

example

  • Generate a call graph for a specific APK file. androguard cg app.apk v4.1.0 · Feb 2024 · source
Signing block analysis shipped Supports parsing and analysis of APK signing blocks, including v3.1 format and multiple v2 blocks with identical IDs. 6 releases · first seen Feb 2018

release

  • Supports parsing of APK v3.1 signing blocks, extending signature analysis coverage. v4.1.4 · Jun 2026 · source · release history
  • Supports multiple APK v2 signing blocks with the same ID. v4.1.4 · Jun 2026 · source · release history
  • Adding v3 signing code v3.3.0 · Jan 2019 · source · release history
  • Support added for verifying APK v2 signatures (APK class now accepts APK v2 format files). v3.1.0 · Mar 2018 · source · release history
  • Adds new certificate parsing using pyasn1 and cryptography (replacing chilkat) v3.1.0-rc1 · Feb 2018 · source · release history
  • Chilkat dependency is removed in favor of pyasn1/cryptography for certificate parsing v3.1.0-rc1 · Feb 2018 · source · release history
Expanded manifest tag parsing shipped Improves manifest parsing coverage by reading tags with Android XML namespaces. 3 releases · first seen Jan 2019

release

  • Reads tags with the Android XML namespace, improving manifest parsing coverage. v4.1.3 · Feb 2025 · source · release history
  • AXMLPrinter and AXMLParser gain an is_valid() method for validation. v3.3.2 · Jan 2019 · source · release history
  • Rewriting AXML parsing by using lxml.etree directly v3.3.0 · Jan 2019 · source · release history
Class hierarchy inspection shipped Retrieves parent classes and interfaces for specific classes during Android binary analysis. 1 release · 1 other source · first seen Jan 2019

release

  • ClassAnalysis gains get_interfaces(), get_parent_class(), and get_name() methods. v3.3.2 · Jan 2019 · source · release history

example

  • Retrieve the parent class and interfaces for a specific class during Android binary analysis. from androguard.core.analysis import analysis cls = analysis.ClassAnalysis(class_node) print(cls.get_parent_class()) print(cls.get_interfaces()) v3.3.2 · Jan 2019 · source
Sparse resource entry resolution shipped Supports parsing and resolution of sparse resource entries in APK resources. 1 release · first seen Jun 2026

release

  • Adds support for FLAG_SPARSE and resource resolution in compact entries. v4.1.4 · Jun 2026 · source · release history
External database session support shipped Allows analysts to configure Androguard sessions to use an external database URL. 1 release · first seen Feb 2025

release

  • Supports a custom db_url parameter in Session, allowing analysts to point Androguard at an external database instead of the default. v4.1.3 · Feb 2025 · source · release history
Custom permission protection level inspection shipped Exposes the protection level information for custom permissions defined in APKs. 1 release · first seen May 2024

release

  • Exposes protection level information for custom permissions in the analysis API v4.1.2 · May 2024 · source · release history
Localized application name retrieval shipped Retrieves application names localized to a specific locale via the analysis API. 1 release · first seen May 2024

release

  • Adds the locale argument to the get_app_name() method for localized app name retrieval v4.1.2 · May 2024 · source · release history
DEX file identification shipped Identifies and extracts the official classes.dex file from APK packages using strict pattern matching to avoid false positives. 1 release · first seen Feb 2024

release

  • Applies a stricter regex to capture only official classes.dex files v4.1.0 · Feb 2024 · source · release history
Android API usage tracking shipped Retrieves data on Android API usage within analyzed applications. 1 release · first seen Dec 2023

release

  • Adds get_android_api_usage method to Analysis class for retrieving Android API usage data v4.0.1 · Dec 2023 · source · release history
Rapid metadata retrieval shipped Retrieves package name, version, and other metadata quickly without performing a full binary analysis. 1 other source · first seen Jan 2019

example

  • Retrieve metadata quickly without full analysis. androguard apkid my_app.apk v3.3.0 · Jan 2019 · source

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for Androguard, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail Androguard puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

Show

9 entries

  1. June 20261
  2. February 20251
  3. May 20241
  4. February 20241
  5. December 20231
  6. January 20192
  7. March 20181
  8. February 20181
    Show

    9 entries

    Project health

    Issue, contributor and maintainer activity in androguard/androguard, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 1 −6 vs prior 12 months
    2. Maintainers 1 +1 joined · −2 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed 100% of issues opened, last 12 months
    5. Median time to close 10 days first maintainer reply 12 days
    6. Open backlog 39 of 649 issues ever filed
    1. Issues opened / month 1 · 0 communitymaintainers
    2. Open backlog 39
    3. Contributors / month 1
    4. Commits / month 11
    5. Stars 6,257
    Issue themes, last 12 months
    • other 100%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →