android - 即使在 Android 中使用 @hide 注解后,API 也不会被隐藏

标签 android hide javadoc

我正在 android 上编写自己的 SDK,并因此创建自己的 jar。 现在,我使用 droiddoc 工具创建 SDK 的文档。

在我的框架文件(.java)中,有很多API我用@hide标记了 现在这是当前状态:

a) 所有标有 @hide 的 API 都隐藏在文档中。

b) 这些标记为隐藏的 API 包含在生成的 jar 文件的类文件中。(我使用 Java 反编译器来检查这一点)。

现在,当我在 eclipse 中包含这个 jar 并在类对象上使用 Ctrl+space 来查找其选项时,我可以看到隐藏的 API 实际上是可见的并且可以在此处访问。

我在这里遗漏了什么吗?我需要在 make 文件中添加任何特殊标志吗?或者这是正常行为?

最佳答案

我发现:

android.jar has all classes from com.android.internal removed, and all classes, enums, fields and methods marked with @hide removed as well

因此带有 @hide 的类不包含在 jar 中 -> 这就是它们在 Eclipse 中无法访问的原因。 此外:

When you launch your application on device it loads framework.jar (roughly this is equivalent of android.jar on the device) which is uncut and has all the internal API classes and all hidden API components.

看看this postthis answer
希望您找到隐藏事物的替代解决方案

关于android - 即使在 Android 中使用 @hide 注解后,API 也不会被隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14580888/

相关文章:

android - 如何使 fragment 中的 RecyclerView 可点击?

javascript - 在 Javascript 中验证文本区域会卡住所有文本区域

jQuery 仅在页面上显示/隐藏一项

scala - 如何使用 sbt 跳过 javadoc 依赖项下载

android - 动态 inflatedView 的问题

android - java.lang.IllegalStateException : Can not perform this action after onSaveInstanceState

javascript - 我如何更改此代码以显示带有下拉菜单而不是复选框的隐藏表单?

javascript - Div 隐藏/显示切换问题

java - 在 Java 中查找空闲端口

android-studio - 将 Parse javadoc 添加到 Android Studio