我有一个带有webview的应用程序。 webview链接到所有链接均可正常运行的移动网页。当我点击此网页浏览中的链接时,该链接会在网页浏览中的谷歌地图中打开。相反,我想要链接打开本机谷歌地图应用程序。谁能告诉我怎么做?网上几乎没有任何关于它的信息。谢谢!
编辑:基于Matiash的回复。这是我添加的代码:
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (Uri.parse(url).getHost().equals("www.MYURL.com")) {
return false;
}
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
return true;
}
答案 0 :(得分:1)
您应该按照其他响应所示添加WebViewClient
,但要覆盖的正确方法是shouldOverrideUrlLoading()
。
返回true
表示已处理该链接,否则为false
。
答案 1 :(得分:0)
我使用此代码是因为ihad映射了链接和电话号码链接:
@Override
public boolean shouldOverrideUrlLoading(WebView wv, String url) {
if(url.startsWith("tel:")) {
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse(url));
startActivity(intent);
return true;
}
if(url.startsWith("https://maps.google")){
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
return true;
}
wv.loadUrl(url);
return false;
}