나는 다른 일을하는 3 가지 서비스가 있고 모두 wakelocks가 필요한 상황이 있습니다.wakelock은 정적인가요? 그렇다면 한 응용 프로그램에서 여러 서비스/wakelocks를 어떻게 관리합니까?
실행이 끝나면 wakelocks를 해제하고 싶지만, 잠자기를 해제 한 서비스가 다른 서비스의 동작을 손상시킬 수 있습니다. 그래서, 내가 상상하고있어 시나리오는 다음과 같습니다
서비스 A 횡령 잠금 깨어
서비스 B를 잡고 잠금 일어나 일을 시작하고 뭔가를
서비스 A 마감을하고 시작하고 출시 잠 깨어
이 시점에서 B 서비스는 어떻게됩니까?
그래서, 내 기본 질문은 다음과 같습니다
가A)에 대해 걱정이 뭔가 또는 안드로이드가 자동으로 장면 뒤에 날 위해 관리 않습니다 (내 가정은하지) 않습니다입니까?
b) 서비스가 완료되지 않은 경우 절전 모드 잠금이 계속 유지되는지 또는 서로를 훼손하지 않는 별도의 절전 모드를 유지하는 가장 좋은 방법은 무엇입니까?
아 ...이 전체 메커니즘의 참조 카운팅 부분은 불분명하고 분명히 중복 부울 세터를 명시 적으로 호출하지 않고도 내 목적을 완벽하게 처리 할 것입니다. 언제나처럼 고마워. –
@ Dr.Dredel : 예. 일반적으로 참조 카운트 된 'WakeLocks'가 필요합니다. 이것이 기본값에 의한 것입니다. 'WakefulIntentService'에서 나는 * 정말로 정말로 * 참조 카운트 된'WakeLock'을 원한다. 그래서 나는 구글이 기본값을 변경하는 경우를 대비해 어쨌든 setter를 호출한다. 예상치 못한 시나리오로는 레퍼런스 카운트 된 'WakeLock'을 원하지 않을 수도 있지만, 대머리의 머리에서 벗어난 예를 생각할 수는 없습니다. – CommonsWare