簡體   English   中英

檢查是否在Android上安裝了Facebook

[英]Checking if Facebook is installed on Android

我該如何檢查? 我必須使用PackageManager嗎? 謝謝你:D

我以這種方式進行檢查(檢查返回的值是否不等於null):

public static Intent findFacebookClient(Context con)
{
    final String[] FacebookApps = {"com.facebook.android", "com.facebook.katana"};
    Intent facebookIntent = new Intent();
    facebookIntent.setType("text/plain");
    final PackageManager packageManager = con.getPackageManager();
    List<ResolveInfo> list = packageManager.queryIntentActivities(facebookIntent, PackageManager.MATCH_DEFAULT_ONLY);

    for (int i = 0; i < FacebookApps.length; i++)
    {
        for (ResolveInfo resolveInfo : list)
        {
            String p = resolveInfo.activityInfo.packageName;
            if (p != null && p.startsWith(FacebookApps[i]))
            {
                facebookIntent.setPackage(p);
                return facebookIntent;
            }
        }
    }
    return null;
}
final PackageManager pm = getPackageManager();
List<ApplicationInfo> packages = pm
            .getInstalledApplications(PackageManager.GET_META_DATA);
for (ApplicationInfo packageInfo : packages) {
    Log.d(TAG, "Installed package : " + packageInfo.packageName);
}

然后,您可以檢查packageInfo.packageName是否等於某個字符串,其中包含該應用程序的軟件包名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM