Hidden API Demo
一个展示 Android Hidden API 接口信息的示例应用,通过纯 Java UI 实现,无需 XML 布局文件。
本项目是一个独立的 Android 应用程序,用于展示 hidden-api 模块中所有接口的文档信息。应用以卡片形式展示了各种隐藏 API 的详细信息,包括 AIDL 接口、Java 接口和类等。
- 📱 纯代码 UI:完全使用 Java 代码构建用户界面,无 XML 布局依赖
- 🎨 Material Design:采用 Material Design 设计风格
- 📋 API 信息展示:详细展示隐藏 API 的名称、包路径、类型、描述、方法和字段等信息
- 🔍 分类显示:按 AIDL、Interface、Class 类型进行分类标识
- 📖 完整文档:提供每个 API 的详细说明和使用场景
支持的 Hidden API
IPackageInstaller- 包安装器 AIDL 接口IPackageInstallerSession- 安装会话 AIDL 接口IPackageManager- 包管理器 AIDL 接口
IIntentReceiver- Intent 接收回调接口IIntentSender- Intent 发送者接口
PackageInstaller- 包安装器 Java 封装类PackageInstaller.Session- 安装会话类VersionedPackage- 版本化包名类ServiceManager- 系统服务管理器UserHandle- 用户句柄类
- 语言: Java
- 最低 SDK: Android 9.0 (API 28)
- 目标 SDK: Android 15 (API 36)
- 构建工具: Gradle 8.13.0
- 依赖库:
- AndroidX AppCompat 1.7.1
- Material Design Components 1.13.0
- ConstraintLayout 2.2.1
app/
├── src/main/
│ ├── java/io/github/huidoudour/Installer/demo/
│ │ └── MainActivity.java # 主活动,包含所有 UI 逻辑
│ ├── res/
│ │ └── mipmap-anydpi-v26/
│ │ └── ic_launcher.xml # 应用图标
│ └── AndroidManifest.xml # 应用清单文件
├── build.gradle.kts # 模块级构建配置
└── proguard-rules.pro # ProGuard 规则
- Android Studio Hedgehog 或更高版本
- JDK 21
- Android SDK Platform 36
- Android SDK Build-Tools 36
- 克隆项目到本地
- 在 Android Studio 中打开项目
- 同步 Gradle 文件
- 连接设备或启动模拟器
- 点击 Run 按钮运行应用
# 构建调试版本
./gradlew assembleDebug
# 安装到设备
./gradlew installDebug- 启动应用后,您将看到一个包含多个卡片的列表
- 每个卡片代表一个隐藏 API,顶部有类型标签(AIDL/Interface/Class)
- 卡片中包含以下信息:
- API 名称和包路径
- 修饰符、继承关系等元数据
- 详细描述
- 可用方法列表
- 字段和内部类信息
- 使用
LinearLayout作为主要布局容器 - 采用
NestedScrollView支持滚动浏览 - 动态创建视图组件,避免 XML 布局文件
- 使用 Material Design 组件提升用户体验
- 主色调: Purple (#6200EE)
- 次要色: Teal (#03DAC5)
- 状态栏: 白色背景 + 深色图标
- 本应用仅用于学习和研究目的
- Hidden API 的使用可能在不同 Android 版本间发生变化
- 在生产环境中使用隐藏 API 需要谨慎考虑兼容性问题
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情
欢迎提交 Issue 和 Pull Request 来改进这个项目!