2010.06.04日志:关于android正在运行程序的关闭问题
来源:互联网 发布:win7装linux双系统 编辑:程序博客网 时间:2024/04/29 23:31
从网上搜到的线索:
下面的代码利用Intent.CATEGORY_LAUNCHER,可以取得表示在Launcher中的所有App信息
可是如何取得正在运行状态的App信息呢?在intent里面没找到对应的定义。
希望高手指教,谢谢
1: PackageManager manager=getPackageManager();
2: Intent intent=new Intent(Intent.ACTION_MAIN,null);
3:
4: //在Launcher中的所有App信息--》 apps
5: intent.addCategory(Intent.CATEGORY_LAUNCHER);
6: List<ResolveInfo> apps=manager.queryIntentActivities(intent,0);
7: Collections.sort(apps,new ResolveInfo.DisplayNameComparator(manager));
2.关于开机运行的程序的获得:
线索:
getPackageManager().queryIntent***()可以指定Intent查循所有的Activity,其他组件类似!
- 思考:要想让一个Activity或BroadcastReceiver在开机时启动运行,要在项目的Androidmanifest.xml中的<intent-filter>中写上<action android:name = “android.intent.action.BOOT_COMPLETED”>
所以要可以这样处理来获得开机运行的程序:
1: public List fetch_installed_apps() {
2: PackageManager packageManager = getPackageManager();
3:
4: Intent intent = new Intent(Intent.ACTION_BOOT_COMPLETED,null);//开机启动的intent
5: List<ResolveInfo> appsList = packageManager.queryIntentActivities(intent, 0);//搜索开机启动的intent的Activity
6: // List<ResolveInfo> appsList = packageManager.queryBroadcastReceivers(intent, 0);//搜索开机启动的intent的BroadcastReceivers
7: list = new ArrayList<Map<String, Object>>(appsList.size());
8: Log.d("TAG", appsList.size()+"");
9: Iterator<ResolveInfo> l = appsList.iterator();
10:
11: while (l.hasNext()) {
12: Map<String, Object> map = new HashMap<String, Object>();
13: ResolveInfo app = (ResolveInfo) l.next();
14: String packageName = app.activityInfo.packageName;// 包名
15: String appDir = app.activityInfo.labelRes+"";// 程序的路径
16: File appFile = new File(appDir);// 由路径创建一个File
17: String fileSize = appFile.length() + "";// 当前程序的大小
18: String label = "";
19: try {
20: // label = getPackageManager().getApplicationLabel(app).toString();// Label
21: // PackageInfo pInfo = getPackageManager().getPackageInfo(
22: // packageName, MODE_APPEND);
23: // versioncode =pInfo.versionCode+"";//版本号
24: // versionName = pInfo.versionName + "";// 版本名
25: } catch (Exception e) {
26: Log.i("Exception", e.toString());
27: }
28: map = new HashMap<String, Object>();
29: map.put("name", packageName);
30: map.put("desc", appDir);
31: // map.put("img", getPackageManager().getActivityIcon(g));
32: list.add(map);
33: }
34: return list;
35: }
- 2010.06.04日志:关于android正在运行程序的关闭问题
- vc-如何关闭正在运行的程序??
- C#程序提示”遇到问题正在关闭“的问题,并且没有日志输出
- 终端运用程序名关闭正在运行的程序
- linux关闭正在运行在后台的程序
- android监听正在运行的程序
- android 正在运行的程序与界面
- Android 无法获取正在运行的程序
- 关闭正在运行的应用
- 关闭正在运行的端口
- [Android分享] 关闭正在运行的应用(精华板)
- 列出正在运行的程序
- 强制关闭正在运行的应用
- linux中关闭正在运行的脚本
- c语言关闭正在运行的应用程序
- 得到android多有的正在运行的程序信息
- Android 读取正在运行非系统的程序
- Android获取正在运行的程序并kill掉它
- 读懂JAVA WEB项目的一点心得
- 记测试工具iozone,iometer,bonnie++
- 【Linux】Bash Shell之date用法
- Socket编程基础知识
- 产品的成本计算
- 2010.06.04日志:关于android正在运行程序的关闭问题
- backtrace函数与堆栈
- 服务器性能测试,你选哪种工具
- 将txt数据导入mysql
- eclipse + cdt + gdb 进行arm linux 交叉调试
- 硬盘测试软件IOMETER安装配置指南
- Tuxedo FAQs 整理
- spring 定时器
- Linux查看文件夹大小