为android开放类增加自定义成员方法
发布日期:2021-06-29 02:33:04
浏览次数:2
分类:技术文章
本文共 1205 字,大约阅读时间需要 4 分钟。
android SDK中有些JAVA类是开放的,有些是不开放的,API同样如此。这里所谓开放的类或API,只是javadoc的范畴,并不是java中public和private,也就是说,对于源码的编译无所谓,但是对android的上层应用有影响,因为非开放的类或API,android上层应用无法直接访问。
类或API是否开放,是通过doc的注释{@hide}来控制的。比如android.media.Metadata 这个类就是android没有公开的类,因为在frameworks\base\media\libmedia\Metadata.java文件中,定义Metadata类之前有/**{@hide}*/此doc注释,所以Metadata类被定义为了非公开类,即是在android应用程序中无法直接访问的类。
但是如果我们在Android的公开类中添加了一些自定义的成员方法或成员变量,生成我们修改后的sdk(jar包)供上层应用程序使用,此时在编译源码生成SDK的过程中会出现这个问题:
****************************** You have tried to change the API from what has been previously approved. To make these errors go away, you have two choices: 1) You can add "@hide" javadoc comments to the methods, etc. listed in the errors above. 2) You can update current.xml by executing the following commands: p4 edit frameworks/base/api/current.xml make update-api To check in the revised current.xml, you will need OWNERS approval. ****************************** google 给了两个选择: 1. 在你添加的API或者变量前面,增加javadoc 注释@hide。但是要注意的是,并不是简单写个@hide 或者 /*@hide*/ 就可以了,这些都是错误的javadoc注释格式,标准的javadoc都是这样的 /** */ 而且对于 format 变量 应该加上 { }。 所以我们应该这样写 /** {@hide} */2. 你就是想要生成的javadoc里面出现这个方法或者变量,你必须输入: make update-api
但是如果修改的是google没有开放出来的类,比如RIL,PhoneFactory,就不会出现这个问题,
转载地址:https://blog.csdn.net/yyyyyyyyyywwwwwwwwww/article/details/45498517 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月26日 17时18分31秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
常用算法1:动态规划--Leetcode
2019-04-29
常用算法2:回溯法--Leetcode
2019-04-29
常用算法3:分治法--Leetcode
2019-04-29
自动化测试2--unittest
2019-04-29
单元测试
2019-04-29
京东web登录测试用例编写
2019-04-29
常用算法4:二叉树--Leetcode
2019-04-29
接口测试2——jmeter
2019-04-29
软件测试大佬求职过程是怎样的
2019-04-29
软件缺陷基础
2019-04-29
软件测试-面试13问
2019-04-29
记一次django项目的部署
2019-04-29
测试项目调研
2019-04-29
接手软件测试新项目的流程
2019-04-29
jmeter-性能测试2-脚本录制开发
2019-04-29
jmeter-性能测试3-参数化
2019-04-29
期货基础知识
2019-04-29
期权基础
2019-04-29
jmeter-性能测试6-性能基础扫盲
2019-04-29
pytest+allure生成测试报告
2019-04-29