获取开机启动程序列表

仅供参考:

View Code
 1 public List fetch_installed_apps() {
2
3 PackageManager packageManager = getPackageManager();
4
5
6
7 Intent intent = new Intent(Intent.ACTION_BOOT_COMPLETED,null);//开机启动的intent
8
9 List<ResolveInfo> appsList = packageManager.queryIntentActivities(intent, 0);//搜索开机启动的intent的Activity
10 //
11 List<ResolveInfo> appsList = packageManager.queryBroadcastReceivers(intent, 0);//搜索开机启动的intent的BroadcastReceivers
12
13 list = new ArrayList<Map<String, Object>>(appsList.size());
14
15 Log.d("TAG", appsList.size()+"");
16
17 Iterator<ResolveInfo> l = appsList.iterator();
18
19
20
21 while (l.hasNext()) {
22
23 Map<String, Object> map = new HashMap<String, Object>();
24
25 ResolveInfo app = (ResolveInfo) l.next();
26
27 String packageName = app.activityInfo.packageName;// 包名
28
29 String appDir = app.activityInfo.labelRes+"";// 程序的路径
30
31 File appFile = new File(appDir);// 由路径创建一个File
32
33 String fileSize = appFile.length() + "";// 当前程序的大小
34
35 String label = "";
36
37 map = new HashMap<String, Object>();
38
39 map.put("name", packageName);
40
41 map.put("desc", appDir);
42
43 // map.put("img", getPackageManager().getActivityIcon(g));
44
45 list.add(map);
46
47 }
48
49 return list;
50
51 }
52
53
54 用Intent intent = new Intent(Intent.ACTION_BOOT_COMPLETED,null);//开机启动的intent获得的,

  

posted @ 2011-08-09 18:37  水向东流  阅读(537)  评论(0编辑  收藏  举报