android判断是否安装某个应用

工具方法:
测试包名:
public static final String PN_GAODE_MAP = “com.autonavi.minimap”;// 高德地图包名
public static final String PN_BAIDU_MAP = “com.baidu.BaiduMap”; // 百度地图包名
public static final String PN_TENCENT_MAP = “com.tencent.map”; // 腾讯地图包名

/**
     * 判断是否安装某个应用
     */
    private boolean checkAppInstalled(Context context, String pkgName) {
        if (pkgName== null || pkgName.isEmpty()) {
            Toast.makeText(context, "没安装", Toast.LENGTH_SHORT).show();
            return false;
        }
        final PackageManager packageManager = context.getPackageManager();
        List<PackageInfo> info = packageManager.getInstalledPackages(0);
        if(info == null || info.isEmpty()){
            Toast.makeText(context, "没安装", Toast.LENGTH_SHORT).show();
            return false;
        }
        for ( int i = 0; i < info.size(); i++ ) {
            if(pkgName.equals(info.get(i).packageName)) {
                Toast.makeText(context, "安装了", Toast.LENGTH_SHORT).show();
                return true;
            }
        }
        Toast.makeText(context, "没安装", Toast.LENGTH_SHORT).show();
        return false;
    }

调用上面方法即可判断是否安装:

boolean bd = checkAppInstalled(this,"com.baidu.BaiduMap");
boolean gd = checkAppInstalled(this,"com.autonavi.minimap");
boolean tx = checkAppInstalled(this,"com.tencent.map");

你可能感兴趣的:(加深学习)