【发布时间】:2020-08-15 01:43:28
【问题描述】:
我想在我的应用中开始活动之前检查一个条件。我想检查用户是否安装了传统的 WhatsApp 或 WhatsApp 业务。我检查了两个应用程序包的名称。但是,尽管我的手机上已经安装了 WhatsApp,但我还是遇到了异常。
这是我用来检查包名的代码
private boolean isPackageInstalled(String packageName, PackageManager packageManager) {
try {
packageManager.getPackageInfo(packageName, 0);
return true;
} catch (PackageManager.NameNotFoundException e) {
return false;
}
}
我在我的 onCreate 方法中使用了这个方法
private void checkwhatsversion() {
PackageManager pm = mainactivity.this.getPackageManager();
boolean isInstalled1 = isPackageInstalled("com.whatsapp", pm);
boolean isInstalled2 = isPackageInstalled("com.whatsapp.w4b", pm);
if(isInstalled1) {
button1.setVisibility(View.VISIBLE);
}
if (isInstalled2) {
button2.setVisibility(View.VISIBLE);
}
}
【问题讨论】: