Android 官方对应用开发者隐藏了很多 API,在一般开发中,我们很少需要使用它们,但并不是说这些API很鸡肋,相反的,利用这些API往往能够实现一些神奇的效果
1. 为何对开发者隐藏?
Android 提供给开发人员的SDK 不是完整的系统API,这么做是有原因的:
- 一般的应用并不需要使用到一些系统级的功能
- Android 并不能保证所有API能够保持稳定兼容
所以,使用隐藏API意味着程序兼容性变差,一般不推荐使用。但是有时候调用这些API能够实现一些特殊需求。
2. 如何使用隐藏API?
然而这些API虽然没有在SDK中提供出来,我们仍然可以使用,有两种方式:
1. 通过反射调用隐藏的类,方法或者字段
2. 自己编译完整SDK,公开隐藏的API
本文主要记录第二种。
3. 编译完整的SDK
我已经编译好一份上传了,可以直接下载下来。
方式一产生的 core.jar 和 framework.jar,
方式二产生的 android.jar
3.1 下载AOSP源码
1. 搭建编译环境
具体参照官方指南
2. 下载源码
参照官方指南 ,推荐使用