我想在用户点击“在Whatsapp上共享”按钮时显示Whatsapp未安装。adMob违反了我的策略,如果用户安装了Whatsapp,一切正常,但如果用户没有安装Whatsapp,那么在点击共享时应用程序就会崩溃,这是我的代码:
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url != null && url.startsWith("whatsapp://")) {
view.getContext().startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
}
谢谢
首先尝试检查设备上是否安装了WhatsApp。这是你的指南
要检查的packageName
是“com.whatsApp”,与Google Play url中的id参数相同
https://play.google.com/store/apps/details?id=com.whatsApp
您可以通过使用包管理器的上下文来检查是否安装了特定的包。
private boolean isPackageInstalled(String packageName, PackageManager packageManager) {
try {
packageManager.getPackageInfo(packageName, 0);
return true;
} catch (PackageManager.NameNotFoundException e) {
return false;
}
}
调用上面的方法
PackageManager pm = context.getPackageManager();
boolean isInstalled = isPackageInstalled("com.whatsapp",pm);