anggrayudi/android-hidden-api

A library that provides access to Android hidden APIs and internal resources.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 1 hour ago
Added to GitGenius on September 19th, 2026
Created on September 16th, 2015
Open Issues & Pull Requests: 9 (+0)
GitHub issues: Enabled
Number of forks: 650
Total Stargazers: 3,629 (+0)
Total Subscribers: 125 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 397.8 days
Mean response time: 1129.8 days
90th percentile: 2566.5 days
Tracked items: 38

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 44 days
Stale 30+ days: 1
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • IDE Error (2)
  • enhancement (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Android Hidden APIs is a library that provides access to Android hidden APIs and internal resources that Google deliberately hides from developers.

Google hides certain classes, methods, and resources in the Android framework because they may change between API versions. These hidden APIs exist in the `com.android.internal` package within `framework.jar` and in the `android.jar` file marked with `@hide` javadoc attributes. The tool solves the problem of accessing these internal APIs by providing a custom `android.jar` file that includes the hidden declarations, allowing developers to compile against them. It also ships a CLI tool called `hiddenjar` that generates a custom `android.jar` directly from a running Android emulator or device by extracting framework jars over ADB, converting DEX to class files, and merging them into the SDK's standard `android.jar`.

Developers who need to use undocumented Android internals should understand that hidden APIs carry stability risks since Google may change them without notice. The tool suits projects that have specific requirements for internal framework functionality and can tolerate that risk. The `hiddenjar` CLI is particularly valuable because it merges the entire bootclasspath including mainline and APEX modules, capturing hidden APIs that have moved out of `framework.jar` in newer Android versions.

The project maintains active development with regular updates to support new Android API levels. The tool includes comprehensive verification that generated jars actually compile hidden APIs before completing the build process. Documentation covers multiple usage paths including direct script execution and Gradle wrapper integration, with detailed flag options for customizing output location, target API level, and build behavior.