我的webview中有一些链接是market://links。当我的用户点击它们时,它会给它们一个找不到页面的错误。
如何允许所有以market://开头的链接在被点击时自动打开google play商店?我试过:
final Intent intent = new Intent("android.intent.action.VIEW");
intent.setData(Uri.parse("market://details?id="));
startActivity(intent);
}
但那似乎没什么用。我对这件事还不太熟悉,所以任何帮助都将不胜感激。另外,仅供参考,我无法更改play.google.com的market://links。他们是我的广告商寄来的。
我是否可以将其包含在以下代码中:
public boolean shouldOverrideUrlLoading(WebView paramWebView, String paramString) {
if (DEBUG)
Log.e("shouldOverride", paramString);
if (Uri.parse(paramString).getHost()!=null &&
Uri.parse(paramString).getHost().equals("market.android.com")) &&
(!paramString.contains("facebook.com")) &&
(!Uri.parse(paramString).getHost().contains("twitter.com")) &&
(!Uri.parse(paramString).getHost().equals("play.google.com"))
&& (!Uri.parse(paramString).getHost().contains("bit.ly"))
&& (!Uri.parse(paramString).getHost().contains("plus.google.com")) &&
(!Uri.parse(paramString).getHost().contains("youtube.com"))){
if(isAppOrGamePage(paramString)){
final Intent intent = new Intent(MainActivity.this, PageActivity.class);
intent.putExtra("app_url", paramString);
startActivity(intent);
} else
return false;
} else {
final Intent intent = new Intent("android.intent.action.VIEW",
Uri.parse(paramString));
startActivity(intent);
}
return true;
}
}