【问题标题】:How to use Android SDK Documentation offline如何离线使用 Android SDK 文档
【发布时间】:2017-08-11 03:54:10
【问题描述】:

我已经使用 SDK Manager 下载了 Android SDK 文档,以便将它与 Android Studio v2.3.0.8 脱机使用。

但每次我按 ctrl+q 显示关于 type|type-member 的快速信息时,它都会显示“Fetching Documentation...”,然后等待大约 20 秒后,它会显示信息。

我不希望这种延迟或使用在线帮助,并且本地文档已经到位,那为什么呢? 解决办法是什么?

编辑:当我在线时会发生这种情况,但当我离线时完全没有延迟好像 IDE 试图获取新版本的文档。

【问题讨论】:

标签: android android-studio-2.3


【解决方案1】:

显示文档的改进解决方案(来自源)。

发现,如果您通过 SDK 管理器(它将位于 .../sdk/docs/reference)下载文档,您将使用 only 24 API documentation。 (想象一下,例如,您的项目目标 SDK 是 25 或 22)。

要解决此问题,您需要:

  1. 通过 Android Studio 中的 SDK 管理器删除文档。
  2. 在那里,下载感兴趣的 API 的源代码(源代码已经包含文档)。我还发现,与.../sdk/docs/reference 内部的离线相比,获取documentation from sources 的速度要快一些。
  3. jdk.table.xml 中删除所有 javadoc 路径。 OS X 上此文件的路径:~/Library/Preferences/AndroidStudio.../options/jdk.table.xml

    --> Delete all of these and all occurrences -->
    
    <javadocPath>
      <root type="composite">
        <root type="simple" url="http://developer.android.com/reference/" />
      </root>
    </javadocPath>
    
  4. 重新启动 Studio。尽情享受吧!

【讨论】:

  • 如果您关注 Mauricio answer here,您可以将 SDK 文档用于针对不同 API 的项目,not only 24 API。您的解决方案有效,但我没有下载 api-24 平台或源,只是 api-25 平台和源。
  • a sed oneliner 删除所有 javadocPath 块(在 macos 上):sed -i.bak '/&lt;javadocPath&gt;/,/&lt;\/javadocPath&gt;/d' ~/Library/Preferences/AndroidStudio3.5/options/jdk.table.xml(您可能需要先进行备份,因为文件将在-地点)
【解决方案2】:

我也下载了它,我注意到Android Studio 没有在jdk.table.xml 中正确生成javadocPath,这就是文件的样子(部分有jdk 标签,名称为Android API ## Platform ):

...
<jdk version="2">
  <name value="Android API 25 Platform" />
  <type value="Android SDK" />
  <homePath value="$USER_HOME$/android-sdk" />
  <roots>
      ...
    <javadocPath>
      <root type="composite">
        <root type="simple" url="http://developer.android.com/reference/" />
      </root>
    </javadocPath>
      ...

文件位于Android Studio Configuration folder/config/options/jdk.table.xml

请注意javadocPath 指向在线网址,只需将其更改为您的本地副本,在我的情况下,docs 文件夹位于/home/mauricio/android-sdk/docs,在 Windows 中类似于 C:/android-sdk/docs

你必须遵循的url结构是file://&lt;path-to-sdk&gt;/docs/reference

必须指向文档中的 reference 文件夹。

它看起来像这样:

  <root type="simple" url="file:///home/mauricio/android-sdk/docs/reference" />
  <!-- if it's Windows -->
  <root type="simple" url="file://C:/android-sdk/docs/reference" />

然后,如果它正在运行,请重新启动 Android Studio,它就完成了。
我也有 SSD,离线文档可以立即打开。

注意:您必须在文件中的所有javadocPath 中执行此操作(在任何文本编辑器中使用Replace all 非常容易),并且当您下载新的Android API 时,您必须再次这样做,因为它会生成指向在线文档的 url。


我认为这是 Android Studio 中的一个错误,因为 sourcePathclassPath 被正确检测并生成。值得向他们报告。

【讨论】:

    【解决方案3】:

    修复config/options/jdk.table.xml 的一种方法是停止IDE,删除文件,重新启动广告。 IDE 找到已安装的 SDK,并重新生成选项文件。

    我在从预览版升级到 3.2 时遇到问题,文档显示速度很慢,以上解决了该问题。

    【讨论】:

      【解决方案4】:

      对于 sdk 工具 v26,使用命令行:

      PATH_TO_SDK/tools/bin/sdkmanager "docs"
      

      然后进入PATH_TO_SDK/docs目录,打开index.html文件。

      【讨论】:

      • 感谢您提供 cmdline 来下载文档而不是 GUI 方式
      • Warning: Failed to find package 'docs'。使用sdkmanager --version; 5.0
      猜你喜欢
      • 2019-03-20
      • 1970-01-01
      • 2015-05-20
      • 2016-02-29
      • 2012-01-07
      • 1970-01-01
      • 2011-08-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多