2011-09-08 5 views
0

나는 몇 가지 다른 매개 변수를 기반으로 다른 활동으로 라우팅하는 EntranceActivity이라는 액티비티를 가지고 있습니다.Android : 앱이 포어 그라운드로 돌아갈 때 알려주기

ActivitystartActivity(...EntranceActivity...) 일 수 있고 약간의 뉘앙스에 대해 걱정할 필요없이 로직 EntranceActivity을 통해 다시 라우팅 할 수 있습니다. 전경으로 돌아갈 때 응용 프로그램의 유일한 입구 지점이기도합니다.

Activitybeginning (처음 시작/백그라운드에서)에서 포 그라운드로 푸시 될 때와 앱 사용 중에 라우팅 할 때를 결정할 수 있어야합니다. (즉, Activity2 다시 EntranceActivity로)

다음과 같은 질문이 앱이 포 그라운드에 있는지 확인 ...하지만 앱이 Foreground에있을 때 그 될 것 같지 않습니다 그래서 EntranceActivity 만, 실행하는 방법을 보여줍니다 내가 찾는거야.

How can I tell if android app is running in the foreground?

답변

0

볼 :-)에게 있습니다).

지금은 취소 탑을 계속할 수 ViewDispatcherActivity 앱 동안 필요에 따라 (사용자가 일반 응용 프로그램 작업을 수행하는 동안 EntranceActivity에 반환하지 않기 때문에) 일부 Return-To-Foreground 논리를하면서

EntranceActivity (유일한 응용 프로그램 진입 점)

에서 onCreate :

if (ShouldShowAccessActivity()) { startActivityForResult(new Intent(EntranceActivity.this,AccessActivity.class)); return; } 

//go to view dispatcher to further branch off. 
startActivityForResult(new Intent(EntranceActivity.this,ViewDispatcherActivity.class)); 
+0

당신이 언급 한 "Return-To-Foreground"로직을 확장 할 수 있는지 궁금합니다 : –

+1

@Joel Martinez there you go .. –

1

당신은 쉽게 기본 활동에 ... refcount로이 작업을 수행 할 수있는 onResume 방법에 increment the value, (당신은 ;-)? 바로 하나를 가지고)와 onPause 방법에 그것을 감소. 값이 0이 아닌 경우, 앱 내가 응용 프로그램에 대한 유일한 진입 점을, 그리고 EntranceActivityViewDispatcherActivity (이전에 리디렉션 다른 EntranceActivity을 추가하여 작업이 점점 결국

+0

나는 기본 활동을 수행하지만, REF-계산 못해 아주 내가 원하는 것을 달성. 이 페이지에 내 솔루션을 추가했습니다. 미안, 내 질문에 충분히 명확하지 않은 경우. 건배! –

관련 문제