搜索未链接到本地​​Android SDK文档的正确位置

时间:2012-07-10 10:18:38

标签: android

在我的Mac上更新Android SDK和相应文档后,本地存储文档的搜索结果停止链接到正确的位置。搜索结果链接到root(“/”)而不是本地文档目录(ANDROID_SDK_DIRECTORY / docs /)。

“Android SDK文档”适用于API版本16,是修订版1。

3 个答案:

答案 0 :(得分:0)

作为一种解决方法,我编辑了一个文档Javascript文件。 编辑的函数是文件ANDROID_SDK_DIRECTORY / docs / assets / js / search_autocomplete.js中的search_changed(关于第174行)。在函数的开头添加了以下内容:

var cur_loc = window.location.pathname;
var slash_doc_slash = cur_loc.indexOf("/docs/");
if ( slash_doc_slash >= 0) {
    var after_bit = cur_loc.substr(slash_doc_slash + "/docs/".length);
    var after_bit_length = after_bit.length;
    var up_dots = "";
    for ( var i = 0; i < after_bit_length; i++) {
        var test_ch = after_bit.charAt(i);
        if ( test_ch == "/") {
            up_dots += "../";
        }
    }

    toroot = up_dots;
}

答案 1 :(得分:0)

在阅读js文件ANDROID_SDK_DIRECTORY/docs/assets/js/search_autocomplete.js后,在我看来搜索结果是由谷歌网络搜索API绘制的。如果我们想要修改搜索结果,我们必须重写代码的搜索引擎部分。

答案 2 :(得分:0)

搜索框似乎只是将查询提供给Google的服务器,后者使用https://developer.android.com上的网址进行回复。为了在本地SDK上搜索和打开页面,我使用这个shell脚本:

#!/bin/sh

if [ -z $SDK_BASE ]; then
    SDK_BASE=/opt/android-sdk
fi

launched_new_window="false"

for f in `find $SDK_BASE/docs/ -iname \*$1\*.html`; do
    if [ $launched_new_window = "false" ]; then
        /usr/bin/chromium-browser --new-window $f
        launched_new_window=true
    else
        /usr/bin/chromium-browser $f
    fi
done