03
2017
03

安卓利用反射调用@Hide隐藏函数

涉及到两个知识点:1、@Hide隐藏函数;2、反射。

ActionScript3中可以自定义命名空间,从而实现一些方法只有自己开发的库可以调用。java中不能自定义命名空间,但是可以声明@hide,打包之后外部就调用不到了。具体原理可以看这个:http://www.cnblogs.com/wanqieddy/archive/2013/05/24/3096312.html

总结一下,其实就是这个意思:如果是源代码的话,加不加@hide没有任何影响,但是如果是jar的话,如果源码中加了@hide,方法就访问不到了。

利用@hide在开发库的时候我们就可以控制一些方法只有库内可以访问,外部无法访问了。

之前在开发安卓Canvas渲染引擎——hEngine的时候,不知道@hide,一些只想由引擎调用的方法,实现起来很纠结,有时候只能写注释,提示用户不要调用。现在这个问题就可以完美解决了。


利用反射调用隐藏函数。

有时候我们想要调用隐藏的函数,或者private函数,这时候就要用到反射了。实现方法随便百度就能得到。就不多写了。



« 上一篇下一篇 »

相关文章:

安卓sdk下载  (2022-1-29 8:35:50)

安卓原生控件做时钟  (2017-3-3 16:48:11)

安卓FileDescriptor  (2017-2-21 11:28:53)

安卓zxing实现二维码扫描  (2017-2-20 13:42:56)

eclipse代码格式化换行宽度设置   (2016-10-11 16:7:43)

安卓VideoView初始化时黑屏一下的解决方法  (2016-10-11 15:58:1)

Android中使用Handler造成内存泄露的分析和解决(转)  (2016-9-30 13:39:36)

android shape的使用(转)  (2016-9-30 13:36:3)

Android之查看外部依赖jar的源码(转)  (2016-9-23 13:2:7)

Fragment、Tab  (2016-9-20 11:53:42)

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。