whatisgithub

What is dexposed?

alibaba/dexposed — explained in plain English

Analysis updated 2026-06-26

4,511JavaAudience · developerComplexity · 4/5LicenseSetup · moderate

In one sentence

An Android library from Alibaba that lets you intercept and modify Java method calls inside a running app at runtime, without changing source code or restarting, primarily used for hot patching bugs in production apps.

Mindmap

mindmap
  root((dexposed))
    What it does
      Runtime method hooking
      Hot patching
      AOP for Android
    How it works
      Hook by method name
      Before After Replace callbacks
      Modify args and return value
    Tech stack
      Java
      Android Dalvik
    Use cases
      Production bug patches
      SDK behavior overrides
      Runtime monitoring
    Limitations
      Android 2.3-4.4 only
      ART not supported
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Push a bug fix to a live Android app without requiring users to download and install an update.

USE CASE 2

Intercept calls to Android system methods inside your own process to work around OS bugs or limitations on older devices.

USE CASE 3

Log method arguments and return values at runtime for debugging without recompiling the app.

USE CASE 4

Override third-party SDK behavior inside your app without access to the SDK's source code.

What is it built with?

JavaAndroid

How does it compare?

alibaba/dexposedazkaban/azkabancastorflex/smoothprogressbar
Stars4,5114,5104,510
LanguageJavaJavaJava
Setup difficultymoderatehardeasy
Complexity4/54/52/5
Audiencedeveloperdatadeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Only works on Android 2.3 through 4.4 using the Dalvik runtime, ART (Android 5.0+) support was never completed and the project is unmaintained.

Use freely for any purpose including commercial, keep the Apache 2.0 license text and copyright notice when redistributing.

So what is it?

Dexposed is an Android library from Alibaba that lets you intercept and modify the behavior of Java methods in a running app without changing the app's source code or restarting it. The approach comes from a technique called AOP, or aspect-oriented programming, which is a way of adding behavior to code at specific points, such as before or after a method runs, without touching the method's original implementation. The way it works is that you hook a method by name, and provide a callback that runs before the method executes, after it executes, or in place of it entirely. You can read and modify the method's arguments, inspect the object the method belongs to, or override the return value. This applies not only to your own app's code but also to Android system code running inside the same process, which is useful for working around bugs or limitations in older Android versions. Because new code can be loaded dynamically without a restart, the library was used for applying hot patches to production apps. If a bug was found in a live app, a fix could be pushed and applied without requiring users to download and install an update. Integration requires adding the library as a dependency and adding one line of initialization code at app startup. The library includes a check for device compatibility, since it relied on the older Dalvik runtime rather than the newer ART runtime that Android switched to starting with version 5.0. The project was most stable on Android versions 2.3 through 4.4. Support for the ART runtime used in Android 5.0 and later was listed as early beta or not supported at the time of the last published updates, and the project does not appear to have been actively maintained since.

Copy-paste prompts

Prompt 1
Show me how to use dexposed to hook a specific method in my Android app so I can log its arguments and return value every time it is called, without modifying the original method.
Prompt 2
How do I use dexposed to replace a buggy method with a fixed implementation as a hot patch, so users on the live app get the fix without a new APK?
Prompt 3
Walk me through initializing dexposed in my Android Application class and checking device compatibility before attempting any hooks.
Prompt 4
How do I use dexposed to intercept a call to an Android system method inside my app's process and modify its return value?

Frequently asked questions

What is dexposed?

An Android library from Alibaba that lets you intercept and modify Java method calls inside a running app at runtime, without changing source code or restarting, primarily used for hot patching bugs in production apps.

What language is dexposed written in?

Mainly Java. The stack also includes Java, Android.

What license does dexposed use?

Use freely for any purpose including commercial, keep the Apache 2.0 license text and copyright notice when redistributing.

How hard is dexposed to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is dexposed for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.