簡體   English   中英

如何在 JAVA 中獲取 android 中安裝的應用程序數

[英]How to get number of installed apps in android in JAVA

我想獲取 android 中的應用程序總數,並確保這不起作用。

int numberOfInstalledApps = getPackageManager().getInstalledApplications(0).size();

這總是返回 138,如果我卸載一個應用程序然后返回 138 如果我下載一個應用程序然后返回 138。

要在設備上安裝非系統應用程序,您可以執行以下操作:

public static ArrayList<String> getAllInstalledApps() {

        ArrayList<String> applicationsList = new ArrayList<>();
        List<PackageInfo> packageList = getPackageManager()
             .getInstalledPackages(0);

        for (int i=0; i < packageList.size(); i++) {
            PackageInfo packInfo = packageList.get(i);

            if ((packInfo.applicationInfo.flags 
                & ApplicationInfo.FLAG_SYSTEM) == 0) {

                String applicationName = packInfo.applicationInfo
                       .loadLabel(getPackageManager()).toString();

                applicationsList.add(applicationName);
                Log.e("App >" + Integer.toString(i), applicationName);
            }
        }
        return applicationsList;
    }

    

然后,您可以通過執行以下操作獲取列表:

int number = getInstalledApps().size();

您還可以通過調用以下方式啟動任何應用程序:

Intent callAppIntent = new Intent(Intent.ACTION_MAIN, null);
callAppIntent.addCategory(Intent.CATEGORY_LAUNCHER);
List appsList = context.getPackageManager()
                .queryIntentActivities(callAppIntent, 0);

暫無
暫無

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

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