android gets application app information

static String TAG = "zzzz";
public static JSONArray Appxinxi(PackageManager packageManager) {
   
   
    JSONArray array=new JSONArray();
    try {
        List<PackageInfo> packageInfos = packageManager.getInstalledPackages(0);
        for (int i = 0; i < packageInfos.size(); i++) {
            PackageInfo packageInfo = packageInfos.get(i);
            // Filter out system apps
 if ((ApplicationInfo. FLAG_SYSTEM & packageInfo. applicationInfo . flags ) != 0 ) {
                 continue ;            
            }
            JSONObject obj =new JSONObject();
            obj.put("appid", packageInfo.packageName);//appid
            //appname
            obj.put("appname",  packageInfo.applicationInfo.loadLabel(packageManager).toString());
            array.put(obj);
        }
    } catch (Exception e) {
        Log.e ( TAG , " Failed to obtain information " );
    }
    return array;
}
use
private void App(){
     new Thread(){
         @Override
 public void run() {
             super .run();
             // Scan to get APP information
 final JSONArray appInfos = Appxinxi (Mainactiv. this .getPackageManager());                    
            Log. e ( "zzzzzzzzzzzzzzzzzz" ,appInfos.toString());
            appid(appInfos.toString());
        }
    }.start();
}

Guess you like

Origin blog.csdn.net/mt11111111/article/details/80459068