【发布时间】:2015-03-02 15:48:15
【问题描述】:
我使用 webview 来浏览我的网站。我的网站包含市场网址。 我尝试在单击市场 URL 时启动 Playstore 应用程序(下面的代码),但该应用程序打开了最后一个打开的应用程序而不是 Playstore。 如果我回来重新打开我的应用程序,Playstore 会在我的 webView 中打开。 我需要帮助,谢谢。
mWebview.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.startsWith("market://"))
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
startActivity(intent);
return true;
}
else{
view.loadUrl(url);
return true;
}
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Toast.makeText(activity, "Unable to open URL\nPlease Activate WiFi or MobileData and Try Again", Toast.LENGTH_LONG).show();
}
});
我解决了这个代码更改的问题。为我工作完美。从任何市场:// url 开放市场
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url != null && url.startsWith("market://")) {
Intent i = new Intent("android.intent.action.VIEW");
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setData(Uri.parse(url));
startActivity(i);
return true;
} else {
return false;
}
}
【问题讨论】:
-
您的网站中是否正确指定了市场网址。网址是否以“market://”而不是“http://”开头的正确格式
-
是的 url 是市场格式 "market://" 如果我在浏览器中浏览我的网站并单击 url playstore 应用程序打开正确
标签: android url webview google-play