Androidは起動項目のリストを取得する方法

2003 ワード

 static final String BOOT_START_PERMISSION = "android.permission.RECEIVE_BOOT_COMPLETED"; public List<Map<String, Object>> fetch_installed_apps(){ List<ApplicationInfo> packages = getPackageManager().getInstalledApplications(); list = new ArrayList<Map<String, Object>>(packages.size()); Iterator<ApplicationInfo> appInfoIterator = packages.iterator(); while (appInfoIterator.hasNext()) { ApplicationInfo app = (ApplicationInfo) appInfoIterator.next(); //     package         

            if(PackageManager.PERMISSION_GRANTED== getPackageManager().checkPermission(BOOT_START_PERMISSION, app.packageName)) { String label = getPackageManager().getApplicationLabel(app).toString(); Drawable appIcon = getPackageManager().getApplicationIcon(app); Map<String, Object> map = new HashMap<String, Object>(); map.put("name", label); map.put("desc", app.packageName); map.put("img",appIcon); list.add(map); } } return list; }