0

실행 모드가 단일 태스크로 활동합니다. 활동 수신자는 의도 수신자 Intent.FLAG_ACTIVITY_NEW_TASK 인 브로드 캐스트 수신자에 의해 실행됩니다. 이 액티비티가 홈 스크린 상단에 있고이 액티비티에서 moveTasktoBack (true)를 호출하면 홈 스크린 대신 홈 스크린이 표시되고 다른 태스크의 액티비티 B는 맨 앞에 표시됩니다. 작업 순서는 다음과 같습니다.홈 화면 상단의 활동에서 movetasktoback 메소드 호출이 전방으로 홈 화면을 가져 오지 않습니다.

TASK B -> [홈 버튼 누르기] -> 홈 화면 -> BroadCast Receiver에서 활동 시작 -> 활동 A가 moveTaskToBack (true) -> B 태스크의 활동 B를 포 그라운드로 호출합니다.

작업 A (작업 A)와 작업 B (작업 B)의 작업 선호도를 확인했는데 그 차이가 있습니다.

이러한 시나리오에서 액티비티가 자신을 스택으로 되돌릴 때 홈 화면이 표시되도록하려면 어떻게해야합니까?

답변

0

대신 배경에 작업을 이동하는 바로이 같은 HOME 화면을 실행 :

Intent intent = new Intent(Intent.ACTION_MAIN); 
    intent.addCategory(Intent.CATEGORY_HOME); 
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(intent); 
+0

을 나는 항상 내가 활동 B를 필요가 유스 케이스로 팝업 될 것을 할 수 없다 Activity A가 Activity Top B에서 시작되고 Activity A가 movetasktoBack을 호출하는 경우. 이 경우의 활동 B는 모든 응용 프로그램의 활동 일 수 있으며 대부분의 경우 활동 A와 동일한 작업의 일부가되지는 않습니다. – apoorvn

+0

귀하의 의견은 이해가되지 않습니다. 이 코드는'moveTaskToBack()'을 호출하는 것과 같은 것을 수행한다. 호출하는'Activity' 작업이 백그라운드로 이동하고 사용자에게 HOME 화면을 보여줍니다. 이것은 당신이하고 싶다고 말한 것과 정확히 같습니다. 귀하의 불만을 이해하지 못합니다. 이것을 시도한 다음 원하는 방식대로 작동하지 않는다고 알려주십시오. –

+0

AOSP에서 다음과 같은 버그가 발생했다고 생각합니다. https://gitorious.org/cyandreamproject/android_frameworks_base/commit/04f0b70c13c0b89b11493ff3f26ab2d0d961bd3a – apoorvn