배터리 부족, 비행기 모드 사용, wifi 비활성화와 같이 시스템에서 브로드 캐스트 한 여러 인 텐트를 기반으로 알람을 활성화/비활성화하려고합니다.여러 방송 인 텐트를 사용하여 동일한 것을 제어하기
매니페스트에 필요한 인 텐트를 등록하고 BroadcastReceiver
으로 간주하고 수신 된 인 텐트를 기반으로 알람을 설정하려고합니다.
인 텐트 중 하나만 브로드 캐스트되는 동시에 등록 된 인 텐트가 나타내는 모든 조건을 어떻게 고려해야합니까?
예 : "배터리 OK"인 텐트가 브로드 캐스팅됩니다.이 경우 정상적으로 알람을 다시 활성화하지만 비행기 모드가 켜져 있으면 활성화하지 않습니다.
각 조건의 상태를 공유 환경 설정으로 유지하려고 생각했지만 완전히 깨끗한 해결책으로 보이지 않습니다.
일부 인 텐트는 끈적 거리기 때문에 언제든지 얻을 수 있지만 BroadcastReceiver
에 브로드 캐스트 인 텐트를 등록 할 수 없기 때문에 다른 인 텐트 중 하나가있을 때 상태를 파악할 수 없습니다. 보냈습니다.
제안 사항?
사실 내 질문을 설명하기가 어려웠다. 여러 사건에 등록하는 법을 알고 있지만, 나의 질문은 답을 따르면 다음과 같은 순간에 배터리의 상태를 알 수있는 가장 좋은 방법은 무엇인가하는 것이다. 'ACTION_SCREEN_OFF' 의도가 방송 되나요? –
브로드 캐스트 리시버 없이도 언제든지 배터리 상태를 알 수 있으며 실제로는 이전에 브로드 캐스팅 된 리딩을 얻을 수 있습니다. 그러나 이것은 다른 경우에 해당하지 않습니다. – Rasel
예, "일부 의도가 끈적임"이라는 의미입니다. 어쩌면 나는'PendingIntents'를 사용하여 나중에 원래의 브로드 캐스트 인 텐트의 데이터를 검색 할 수 있습니다. –