Android检查facebook是否预装?

Android检查facebook是否预装?,android,Android,我添加了一个代码来检查Facebook是否已安装,在正常情况下它可以正常工作,但当Facebook默认出现在某些设备上时,它会说找不到包。有人能帮我吗 public Boolean checkFbInstalled() { PackageManager pm = getPackageManager(); boolean flag = false; try { pm.getPackageInfo("com.faceb

我添加了一个代码来检查Facebook是否已安装,在正常情况下它可以正常工作,但当Facebook默认出现在某些设备上时,它会说找不到包。有人能帮我吗

public Boolean checkFbInstalled() {
        PackageManager pm = getPackageManager();
        boolean flag = false;
        try {
            pm.getPackageInfo("com.facebook.katana", PackageManager.GET_ACTIVITIES);
            flag = true;
        } catch (PackageManager.NameNotFoundException e) {
            flag = false;
        }
        if (flag == false) {
            try {
                pm.getPackageInfo("com.facebook.lite", PackageManager.GET_ACTIVITIES);
                flag = true;
            } catch (PackageManager.NameNotFoundException e) {
                flag = false;
            }
        }

        if (flag == false) {
            try {
                pm.getPackageGids("com.facebook.katana");
                flag = true;
            } catch (PackageManager.NameNotFoundException e) {
                flag = false;
            }
        }
        return flag;
    }

检查facebook软件包名称是否存在,并带有
try catch

try{
    ApplicationInfo info = getPackageManager().
            getApplicationInfo("com.facebook.katana", 0 );
    return true;
}catch( PackageManager.NameNotFoundException e ){
    return false;
}

注意:如果您想查看FacebookSDK是否存在,而不是Facebook应用程序,则需要将
getApplicationInfo()
方法上的包名从
com.Facebook.katana
更改为
com.Facebook.android

不确定Tre packages是否工作,正常情况下此代码工作,但当Facebook默认进入手机时,它不工作,它总是只给出namenotfoundexception