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);
//过滤掉系统app
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, "获取信息失败");
}
return array;
}
使用
private void App(){
new Thread(){
@Override
public void run() {
super.run();
//扫描得到APP信息
final JSONArray appInfos = Appxinxi(Mainactiv.this.getPackageManager());
Log.e("zzzzzzzzzzzzzzzzzz",appInfos.toString());
appid(appInfos.toString());
}
}.start();
}