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(); }