栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Android如何知道某个应用已启动,并根据启动时间确定应用优先级

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android如何知道某个应用已启动,并根据启动时间确定应用优先级

第一部分

如果您知道应用程序的程序包名称,请尝试以下操作( 将以下代码片段放入应用程序的onCreate方法中 ):

 ActivityManager am= (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);

然后,

 boolean exit = false; while(!exit) {       List<RunningTaskInfo> taskInfo = am.getRunningTasks(1);      ComponentName componentInfo = taskInfo.get(0).topActivity;     if(componentInfo.getPackageName().equals("Your package name"))     {      //Do your work here      exit = true;     } }

当您启动应用程序时,它将被放入 componentInfo中 。该 taskInfo.get(0).topActivity
将在前台返回的活动。因此,您可以通过使用第二个代码段比较程序包来知道您的应用已启动。

注意 :将第二个代码段放入 Asynctask中, 以便可以在 后台 检查应用程序是否已启动。

第二部分:

为了获得优先级,我认为您可以通过检查列表 TaskInfo 来实现,该列表将包含所有正在运行的应用程序。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/469785.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号