Android的,我怎么知道用户切换到其他应用
问题描述:
可能重复:
Run code when Android app is closed/sent to backgroundAndroid的,我怎么知道用户切换到其他应用
在我的Android应用程序,我需要当用户切换从我的应用程序的任何通知其他应用程序,以做一些安全工作。它可以通过点击后退,主页按钮,通过最近的应用程序按钮。任何其他方式? 在android.app.Application中找不到任何东西。 我在应用程序中有许多活动,要将代码放入Activity.onPause()将无法工作,因为它可能会转到同一应用程序中的另一个活动。我需要找到一种被注意的方法。 对此有什么好主意? 由于
答
AFAIK没有简单的方法来做你所需要的。
在我们的应用程序中,我们使用轮询当前顶级活动来检查它是否属于我们的应用程序。
ComponentName getTopActivity() {
List<ActivityManager.RunningTaskInfo> runningTasks = activityManager.getRunningTasks(1);
ActivityManager.RunningTaskInfo topTask = runningTasks.get(0);
return topTask.topActivity;
}
我真的很想知道有没有更好的方法。
答
重复的:Run code when Android app is closed/sent to background
基本上 - 创建与onPause正确设置一个基底活动,并从该一个延伸所有其他活动。
谢谢Uaraven。所以你建议运行一个服务不断检查顶级活动? – brewphone 2012-07-20 18:23:07
这对我来说是最简单的方法。谢谢。 – brewphone 2012-07-23 13:41:16
是的,我会将其作为服务来使用,所以它不会取决于活动的生命周期。 – uaraven 2012-07-23 14:06:20