【问题标题】:How to show Android Google default search results in webview?如何在 webview 中显示 Android Google 默认搜索结果?
【发布时间】:2013-06-06 06:54:04
【问题描述】:

我想在我的 Android 应用程序的 web 视图中显示默认的 Google 搜索结果。我们可以使用 Google 自定义搜索 API 来完成,但它是付费的。我想使用 Google 默认搜索引擎来替换 API。你能帮我提供它的实现吗?

提前致谢

【问题讨论】:

    标签: android android-webview android-search


    【解决方案1】:

    如果我的问题正确,您希望用户能够输入搜索词,然后在webview 中获得谷歌搜索结果。如果您仔细注意,那么在您的浏览器中如果您输入以下 URL:https://www.google.com/search?q=query_string,那么您将获得查询 query_string 的结果。

    所以,为了你的目的:

    第 1 步您可以拥有 EditTextButton

    第 2 步点击按钮可以从EditText 获取文本

    第 3 步然后根据您从 EditText 收到的查询字符串创建一个 URL,如下所示:

    String query; // Get the text from EditText here
    String url = "https://www.google.com/search?q="+query;
    

    第 4 步: 然后使用该 URL,您可以在 webview 中显示 URL 结果。

    结果将显示在那里。有很多线程可以帮助您实现这一目标。有些是:

    如何从 EditText 中获取文本?

    1)How to get text from EditText?

    如何在 webview 中显示 URL?

    1)Trying to display url in Web View

    2)To View a web page inside your app?

    您唯一的任务是创建 URL,然后使用 webview 显示。

    希望对您有所帮助。祝一切顺利。

    【讨论】:

    • 嗨 Shobhit,直到这部分我已经实现了,但问题是在 webview 中它显示的是谷歌的默认页面和搜索结果。我想删除 Google 的 Edittext 和其他选项,如图像、地图、新闻等,但我认为这是不可能的。如果是,请告诉我... :)
    • 我不认为这是可能的,因为我们只是显示该 URL 指向的网页。您可能需要删除在 HTTP 响应中收到的一些链接和标签或其他内容......
    • 是的...但这是不可能的,因为它是法律上不允许谷歌修改其搜索结果。无论如何,非常感谢
    • 谢谢,正是我想要的。
    【解决方案2】:

    在将您的搜索查询 URL 加载到 webView 之前,必须启用 javascript 以便它可以正常运行并且不会要求在默认浏览器中打开。

    String url = "https://www.google.com/search?q="+editText.getText();
    webView1.getSettings().setJavaScriptEnabled(true);
    
    webView1.loadUrl(url);
    

    干杯

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多