2016-08-05 2 views
0

활동이 부분적으로 다른 활동으로 덮여있을 때 발생할 수있는 활동이 일시 중지 상태가되면 일시 중지 상태로 정확히 들어갈 수 있습니까? 보다 정확하게 :안드로이드 활동이 일시 중지 상태가되면 실제로 일시 중지됩니까?

  1. Looper가 들어오는 작업이나 msgs를 처리하는 것을 일시 중지하지만, 여전히 Looper msg 대기열에 작업을 제출할 수 있습니까?
  2. 활동에 메신저가있는 메신저가있는 경우 서비스를 가정하면 메신저 큐가 작업 처리를 위해 일시 ​​중지되었지만 여전히 메시지를받을 수 있습니까? 거의 위의 경우와 같습니다. 1.
  3. 사례 1 또는 2 또는 (1 및 2)가 유효하면 활동이 재개되면 일시 중지 상태 (UI 게시물 버퍼 How to handle Handler messages when activity/fragment is paused에서 제안 된대로)를 처리 할 필요가 없습니다. 메시징 큐 처리를 시작하고 아무 것도 손실되지 않습니다. 이 가정에 내가 맞습니까?

이것이 구현되어야하는 방법이라고 생각하지만 확실하지는 않습니다.

답변

0

(단순 단어 ...) 활동이 보이지만 초점이 맞지 않으면 활동이 일시 중지 상태입니다. 그것은 백그라운드에 있습니다.

+0

답장을 보내 주셔서 감사합니다.하지만 이보다 더 많이 찾고 있습니다. 일시 중지 상태에 있음을 알지만 내 질문은 일시 중지 상태가 프로세스를 실행하는 프로세스에서 무엇을 의미합니까? – Vivek

0

일반적으로 Activity은 UI 요소가 맨 앞에 있지 않음을 의미합니다. UI 스레드는 여전히 입니다. 즉, 루퍼가 여전히 메시지를 처리 ​​할 수 ​​있음을 의미합니다. 당신이 언급 한 메신저는 여전히 작동 할 수 있습니다.

UI 요소가 보이지 않을 수도 있지만 배경에서 상태를 변경할 수 있습니다. 예를 들어, TextView의 텍스트를 변경하십시오. Activity을 다시 시작하면 이러한 변경 사항을 볼 수 있습니다.

+0

그렇기 때문에 Activity가 일시 중지 된 상태에서도 Looper/Messenger가 모든 작업을 수행하지만 렌더링은 조건부로 건너 뜁니다 (일시 중지됨). 나머지는 모두 동일합니다. – Vivek

+0

그런 다음 활동이 중지되면 어떻게됩니까? 멈추는 것은 무엇을 의미합니까? 이 경우 Looper가 중지됩니까 (작업 제출을 위해 차단됨)? 왜냐하면 onStop() 이후 Activity가 onRestart() -> onStart() -> onResume()을 지나갈 때,이 경우에는 Paused 상태에서 다시 시작할 때 수행하는 것보다 더 많은 일을해야하기 때문입니다. – Vivek

+0

내 의견으로는, 정지 상태는 UI와 더 관련이 있습니다. UI 요소는 표시되지 않습니다. 운영체제는 사용자가 다른 '활동'과 상호 작용할 수 있도록 '활동'을 중지합니다. – shhp

관련 문제