在前一篇文章中我展示了如何创建定制的original-android.jar,包含内部API和隐藏API中的所有类。 接下的步骤很明显,就是修改现有的android平台(SDK_DIR/platforms/platform-X/android.jar)。您可以简单的用第2部分创建的original-android.jar替换android.jar,但这样您的所有工程都能够无限制的使用内部API和隐藏API。这不是很合适,因为在大多数工程中,您可能并不允许这样。而且,您基本上希望禁止使用这些API(这是ADT/android.jar的缺省行为),只是在少数工程中要用到内部和隐藏API。 为了达到这种灵活性,需要创建一个新的定制的android平台。当没有必要使用内部和隐藏API时,您使用原始的android平台。当需要访问内部和隐藏API时,您使用定制的android平台。 让我们看看android SDK是如何组织的: 我们需要"platforms”目录,进去瞧瞧: 这里有一个支持的Android平台列表。 现在让我们瞧瞧这是如何与Eclipse设置关联起来的。选择一个Android工程,右键点击->Properties -> Android。您可以看到一个支持平台的列表(它反映的是…/platforms/文件夹)。下面是截图: 创建新的平台 要创建一个定制的平台,需要复制android-9文件夹,命名为android-9-internals,然后做一些修改: ??? …?? ??? ro.build.version.sdk=9 –> ro.build.version.sdk=-9 ??? … ??? ro.build.version.release=2.3 –> ro.build.version.release=2.3.extended 重启eclipse,确认可以看到该新的平台,下面是我所看到的: 为什么我会选择API Level -9? 那是因为必须为一个数字,而且不能是9(或其它已经存在的API Level),否则您的定制平台将不会使用(它会在列表中显示,但不会工作,编译时会取原始的相同数字的平台)。 下面是Libraries视图的截图(当定制平台选中时): 在前一篇文章中,我说明了如何创建一个android.jar的未经裁减版本original-android.jar。本篇文章中,我演示了如何创建使用该original-android.jar的定制android平台。这对于使用隐藏API足够了,但是对于使用内部API还需要更进一步。这是因为ADT仍然禁止使用com.android.internals包中的类(请看上面的截图)。在下一篇文章中,我将告诉您如何定制ADT,允许使用内部API。Android SDK目录树
总结
详细解决方案
应用内部(com.android.internal)和隐藏(@hide)API[第3部分,定制android平台]
热度:129 发布时间:2016-05-01 19:18:23.0
相关解决方案
- The server encountered an internal error () that prevented it from fulfilling th解决方案
- 'Update Progress' has encountered a problem An internal error has occurred解决方案
- 大家帮帮忙呀The server encountered an internal error () that prevented it解决方法
- SOS-(奇怪现象)服务器暂不可用500 internal server error,该怎么解决
- WEBstruts The server encountered an internal error () that prevented it fr解决思路
- 'Update Progress' has encountered a problem An internal error has occurred解决方案
- android 读取byte[]中的元素解决方案
- android 标题栏兑现方式
- android 中Activity向BroadcastReceiver发送数据,该怎么解决
- Android 4.0 为什么模拟器老是提示小弟我谷歌拼音输入法已停止
- android:getSharedPreferences() 这是哪个类的方法解决思路
- android 怎么判断一个程序是否联网
- android 大量数据按周分组,该如何解决
- android RadioButton如何设置默认选中
- ksoap2-android-这个包,连接webService怎么设置超时
- android 怎么重新设置锚点
- android UI界面设计解决方案
- android 图片对象获取的有关问题
- android 怎么调用淘宝支付宝接口
- Android 沿袭InputMethodService自定义输入法
- android 关于服务连接的疑义
- android 两个activity如何通信
- Error 500-Internal Server Error 如何解决
- android 怎么实现对view的放大和缩小
- android 教程解决方法
- android ID,该如何处理
- 准备复习2-3个月,看java+android,请问有经验者,怎么看效果最好》
- android UI线程与AsyncTask的有关问题
- Error 500--Internal Server Error
- Error 500-Internal Server Error