【问题标题】:Android WebView needs to launch specific URLs in separate browserAndroid WebView 需要在单独的浏览器中启动特定的 URL
【发布时间】:2013-02-07 16:23:18
【问题描述】:

我制作了一个使用 WebView 来查看移动网站的应用。移动网站在 WebView 中为其 Web 服务器提供的页面显示“后退”按钮,但某些页面显示导航到外部网站的链接。我想在这些页面上显示一个“返回”按钮以返回原始 Web 服务器,但如果这不可能,我想在标准浏览器中启动这些外部站点,以便用户仍然可以导航使用移动网站包含的“后退”按钮在 WebView 中使用原始网站。

就目前而言,一旦用户单击这些“外部”链接之一,我的应用就无法导航回移动网站,因为这些网站没有显示返回按钮以返回移动应用。

【问题讨论】:

  • 我可以使用类似的方法来检查 URL 是否属于我的移动网站的域,如果不属于,则告诉我的应用程序在标准浏览器中加载外部 URL? stackoverflow.com/questions/10121089/…

标签: android mobile webview


【解决方案1】:

您可以为您的 WebView 实现 WebViewClient

您可以参考WebView 获取相同的示例。

例如:

 webview.setWebViewClient(new WebViewClient() {
   public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
     Toast.makeText(activity, "Oh no! " + description, Toast.LENGTH_SHORT).show();
   }
 });

 webview.loadUrl("http://developer.android.com");

【讨论】:

  • @gonzobrains 如果你实现了 WebViewClient,它将在你的 WebView 中进行导航,而不是为用户点击的每个链接启动本机浏览器。
  • 我认为你不明白我想要做什么。我现在在我的应用程序中显示了一个移动网站,但我希望它在显示不属于我的移动网站的“外部”网页时启动本机浏览器。
猜你喜欢
  • 1970-01-01
  • 2017-07-13
  • 1970-01-01
  • 2011-11-15
  • 1970-01-01
  • 1970-01-01
  • 2011-12-06
  • 1970-01-01
相关资源
最近更新 更多