簡體   English   中英

獲取從市場安裝的應用程序列表

[英]Get a list of apps installed from market

我有列出所有已安裝應用程序的代碼:

    final PackageManager pm = getPackageManager();
    //get a list of installed apps.
            List<ApplicationInfo> packages = pm
                    .getInstalledApplications(PackageManager.GET_META_DATA);

            for (ApplicationInfo packageInfo : packages) {

                Log.d("Tag", "Installed package :" + packageInfo.packageName); 

            }

如何區分系統應用和市場上已安裝的應用? 我想我想出了一種非常規的方法來在包名稱中搜索“ android”,並將其標記為系統應用。 我是否可以通過常規方式僅從市場中找到第三方應用程序?

您可以在檢索到的所有軟件包上調用getInstallerPackageName() 盡管可以對其進行篡改,但對於您的目的來說應該足夠了。

您還可以使用類似:

List<ApplicationInfo> apps = getPackageManager().getInstalledApplications(0);
for (int i=0; i < apps.size(); i++)
{
    if ((apps.get(i).applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0)
    {
         //System app
   }
}

暫無
暫無

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

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