使用internal(com.android.internal)和hidden(@hide)APIs – Part 5
xirihanlin 2011.06.07
原文路径:https://devmaze.wordpress.com/2011/01/19/using-com-android-internal-part-5-summary-and-example/
为了能够使用Internal和Hidden API,你需要:
1. 创建自定义的original-android.jar,包含所有的.class文件
2. 创建自定义的Android平台来使用original-android.jar
3. 修改ADT插件,允许使用com.android.internal包(只为Internal API)
4. 创建新的工程,引用自定义的Android平台(本文中的例子)
在本文中,我将向你们展示如何使用那些Internal和Hidden API。
此外,在本文的结尾,我列出了一些自定义的Android平台,它们都包含Internal和Hidden API。我附带了它们,是为了可能你不想花太多时间在这方面,但又想快速的尝试什么。
例子
创建一个新工程,选择2.3.extender平台:
下面是代码:
这个代码使用了Internal API(PowerProfile)和Hidden API(isWifiApEnabled)。我不用使用反射就能编译并运行这些代码。
自定义平台
下面有些平台,是我为自己创建的。只用拷贝它们到SDK_DIR\platforms文件夹下。这只是让Hidden API可用。对于Internal API,你需要修改你的ADT插件。
API 3:http://www.megaupload.com/?d=S1F2MKYZ
API 4:http://www.megaupload.com/?d=VUCTRI3Y
API 7:http://www.megaupload.com/?d=7ITNILBK
API 8:http://www.megaupload.com/?d=EXT5FKKT
API 9:http://www.megaupload.com/?d=EXT5FKKT
API 10:http://www.megaupload.com/?d=FCV78A9M
==============华丽的分割线=============
我尝试了其中的几个自定义平台,发现,internal 和hidden API真的是可用了,但也有一些意外的问题,如AlertDialog.Builder(Context context)居然说Context参数是多余的。。
没花时间去研究为什么会这样,如果哪位童鞋知道原因,告诉我哈~~
使用internal(com.android.internal)和hidden(@hide)APIs – Part 5相关推荐
- 使用internal(com.android.internal)和hidden(@hide)APIs
方案一:使用android 反射可以实现 Android系统内部提供了一个不错的txt文本读写类,但目前并没有公开提供给标准的SDK,FileUtils类的源代码如下,可以很好的操作Linux下的文 ...
- 使用内部(com.android.internal)和隐藏(@hide)API手记
使用内部(com.android.internal)和隐藏(@hide)API手记 内部API和隐藏API的不同 隐藏API隐藏是为了防止开发人员使用SDK中未完成或者未稳定(接口和架构方面看)的部分 ...
- has leaked window com.android.internal.policy.impl.PhoneWindow解决(Dialog.cancel、dismiss、hide区别)
项目中有个Activity中用到了ProgressDialog,而在跳转到下个Activity时就会报这个错: has leaked window com.android.internal.polic ...
- 使用内部(com.android.internal)和隐藏(@hide)API[第4部分,定制ADT]
本文翻译自http://devmaze.wordpress.com/2011/01/18/using-com-android-internal-part-4-customizing-adt/ 在前面的 ...
- android Eclipse导入com.android.internal.R和layoutlib.jar报错解决方案
今天导入一个项目,发现运行不能,红叉叉表示com.android.internal.R.的一系列引用都失败. 查了一下,这些都在一个SDK自带包layoutlib.jar中.SDK路径\platfor ...
- android.view.WindowLeaked: Activity has leaked window com.android.internal.p
android.view.WindowLeaked: Activity has leaked window com.android.internal.policy.impl.PhoneWindow$ ...
- Internal类或Internal成员讲解
Internal类或Internal成员讲解 原文地址:http://www.cnblogs.com/JeffreyZhao/archive/2009/08/26/internal-member-is ...
- C#中internal和protect internal的理解
[internal] internal关键字是用来修饰类和类的成员的,表示该内容只能在本程序集中访问. 程序集:一般输出形式为dll或exe的文件. 例子: 如果某个程序集中,有如下的类: names ...
- Android 9.0 要禁用 hide APIs了,你的反射要用不了了!
Android 9.0? Hi,大家好,我是承香墨影! 距离 Android 8.0 发布,已经过了五个月,虽然现在占有率并不高,不过呢,Google 已经着手准备下一版本的 Android 系统. ...
最新文章
- apache prefork和worker
- 快速理解Token,Cookie,Session
- 总结一下内核DEBUG中的dump_stack, BUG, BUG_ON以及panic
- python PyQt5 QPixmap()控件
- 在项目开始前,为客户做专门的“需求变更流程”培训是必要的
- laravel+php+支付功能,laravel+微信支付源码
- python安装mysql数据库_windows10安装mysql-8.0.13(zip安装)~Python安装mysql
- EISCONN的故事
- Metasploit
- crontab shell 每5秒执行_视频 |全球最快全自动播种分拣机器人,每5秒处理一件货物...
- 使用类模板实现复数类
- HDU-5876 Sparse Graph
- 第八章节 文件操作一 (文件常用操作)
- hdu4318 最短路变形
- 使用Async方法 Using Async Methods 精通ASP-NET-MVC-5-弗瑞曼 Listing 4-32.
- 计算机组成原理第9章,计算机组成原理第9章习题参考答案
- 爬虫--网络数据采集
- ps剪贴蒙版教程(ps创建剪贴蒙版步骤)
- ZigBee中协调器如何向子节点发消息?
- 用Postman查询RPC常用方法
热门文章
- Activity的生命周期是谁调用的?
- 菜鸟学习Hibernate——简单的一个例子
- 远程桌面解决(面对不同问题)连接办法
- Git入门最终集!SSH公钥是乱码怎么办?IDEA与Git!将自己的代码上传至远程仓库!
- IPv4_数据报文首部格式
- c#_HashSet
- python print 换行_Python小课堂第21课:规整一下我们的输出之打印格式化与字符串...
- android fragment 弹出对话框,Android DialogFragment弹框实现
- 小米五android o卡吗,【图片】小米5优化教程,吃鸡卡的进来!!!_小米5吧_百度贴吧...
- oracle 越南字符,ORACLE 12.2RAC之问题 ora.chad OFFLINE