我使用网络视图来导航我的网站。我的网站包含市场网址。我试图在点击市场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 URLnPlease 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;
}
}
首先,您必须检查用户设备上是否存在Play Store。如果未启用Play Store,则在网络视图中打开该商店,否则打开商店应用程序。
final String appPackageName = yourPackagesName;
try {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + yourPackagesName)));
} catch (android.content.ActivityNotFoundException anfe) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=" + yourPackagesName)));
}