美文网首页
浏览器地址栏输入空格搜索时,如何实现根据当前设定的的搜索引擎来调

浏览器地址栏输入空格搜索时,如何实现根据当前设定的的搜索引擎来调

作者: RTThread小师弟 | 来源:发表于2017-12-01 16:59 被阅读44次

    [DESCRIPTION]

    目前,浏览器地址栏输入空格默认调用谷歌搜索, 而客户需要实现根据当前设定的的搜索引擎来调用。

    [SOLUTION]

    在地址栏输入关键字进行搜索, google默认设计实际上会先按"http://www.google.com/m?q=%s"格式处理,其中%s即

    为关键字,那么在输入空格之类的非法关键字搜索时,就不会再发ACTION_VIEW上来用用户设定的searchEngine来搜显

    示了,所以就会让用户产生设定的搜索引擎失效的疑惑。

    对应代码在:IntentHandler.Java (packages\apps\browser\src\com\android\browser)的getUrlDataFROMIntent方法里,

    if()..else(){

    ...

    url = UrlUtils.fixUrl(url);

    url = UrlUtils.smartUrlFiLTEr(url);//这里会调到UrlUtils.java里,会看到默认用到QUICKSEARCH_G,

    ...

    }

    所以,如要需要修改的话,建议在UrlUtils.java里smartUrlFilter方法里

    if (canBeSearch) {

    return URLUtil.composeSearchUrl(inUrl,

    QUICKSEARCH_G, QUERY_PLACE_HOLDER);

    }

    对于默认的QUICKSEARCH_G,改成动态获得用户设定的searchEngine主页网址来处理即可。

    来源:一牛网论坛

    相关文章

      网友评论

          本文标题:浏览器地址栏输入空格搜索时,如何实现根据当前设定的的搜索引擎来调

          本文链接:https://www.haomeiwen.com/subject/drpwbxtx.html