判断一个包是否存在于系统中(来自网络),经过测试,好用:
public boolean checkBrowser(String packageName) {
if (packageName == null || "".equals(packageName))
return false;
try {
ApplicationInfo info = getPackageManager().getApplicationInfo(
packageName, PackageManager.GET_UNINSTALLED_PACKAGES);
return true;
} catch (NameNotFoundException e) {
return false;
}
}
判断一个Activity是否存在于系统中(来自网络),经过测试好用 :
Intent intent = new Intent();
intent.setClassName("包名", "包名.Activity名");
if(getPackageManager().resolveActivity(intent, 0) == null) {
//说明系统中不存在这个activity
//经过测试,系统中没有的Activity 的确 执行这里
}
else
{
//有的Activity也的确执行这里
}
注意:经测试,在本程序中判断自有的包,结果是肯定存在的,只能判断程序外的包才有用。
public boolean checkBrowser(String packageName) { if (packageName == null || "".equals(packageName)) return false; try { ApplicationInfo info = getPackageManager().getApplicationInfo( packageName, PackageManager.GET_UNINSTALLED_PACKAGES); return true; } catch (NameNotFoundException e) { return false; } }