public static boolean isApplicationSentToBackground(final Context context) {
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasks = am.getRunningTasks(1);
if (!tasks.isEmpty()) {
ComponentName topActivity = tasks.get(0).topActivity;
if (!topActivity.getPackageName().equals(context.getPackageName())) {
return true;
}
}
return false;
}
onPause()를 오버라이드 해서
boolean temp = isApplicationSentToBackground(this);
사용하면 된다.
true일때는 사용자가 홈버튼을 눌렀을때 혹은 앱을 나갔을때
false일때는 나가지 않고 activity로 이동
라고...하는데...테스트는 안해봐서 모르겠네...조만간 쓸일이 있을거 같기는 한데...혹시 몰라 가져 왔음...
출처:
http://hackss.tistory.com/entry/%EC%95%B1-%EC%A2%85%EB%A3%8C-%EC%8B%9C%EC%A0%90%EC%95%8C%EA%B8%B0-%EC%95%B1%EC%A2%85%EB%A3%8C%EC%9D%B8%EC%A7%80-%EC%95%84%EB%8B%88%EB%A9%B4-Activity%EB%81%BC%EB%A6%AC-%EC%A0%84%ED%99%98%EC%9D%B8%EC%A7%80-%EA%B5%AC%EB%B6%84