我创建了一个Web视图应用程序,显示的页面具有market://链接,但单击它们后,我得到404屏幕以及不支持该协议的错误.我试过查看文档,但无法找到与此相关的任何内容.任何帮助深表感谢.
对我来说,JavaScript不是一个解决方案,因为HTML不在我的控制之下.因此,如果您需要从应用程序端控制它,那么有一个相对简单的解决方案:使用派生WebViewClient
并注入实现WebView.setWebViewClient()
.您需要在WebViewClient
实现中覆盖的所有shouldOverrideUrlLoading
方法如下所示:
public boolean shouldOverrideUrlLoading(WebView view, String url) { if (url != null && url.startsWith("market://")) { view.getContext().startActivity( new Intent(Intent.ACTION_VIEW, Uri.parse(url))); return true; } else { return false; } }
对我来说这很好.