在service中检查Activity是否运行。

来源:互联网 发布:sql数据库卸载 编辑:程序博客网 时间:2024/05/31 18:43

http://stackoverflow.com/questions/12172092/check-if-activity-is-running-from-service

有时候需要在service中了解时候某个Activity还在运行状态。例如:收到通知消息的时候打开指定的Activity。但是如果指定的Activity已经不再运行,一些依赖的上下文将不再可用。所以需要在service中检查指定的上下文是否运行。

public boolean isForeground(String myPackage){ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE); List< ActivityManager.RunningTaskInfo > runningTaskInfo = manager.getRunningTasks(1);      ComponentName componentInfo = runningTaskInfo.get(0).topActivity;   if(componentInfo.getPackageName().equals(myPackage)) return true;return false;}
增加permission:
<uses-permission android:name="android.permission.GET_TASKS" />




0 0
原创粉丝点击