배터리 수준 및 충전 상태 모니터링 | Android Developers 
 현재 충전 상태 확인 
 충전 상태 에서 충전 모니터링 
 현재 배터리 수준 확인 
 배터리 수준 의 중요 한 변화 모니터링 
 업데이트 가 배터리 수명 에 미치 는 영향 을 줄이 기 위해 백그라운드 업데이트 빈도 를 변경 할 때 는 현재 배터리 수준 과 충전 상태 부터 확인 하 는 것 이 좋 습니다 . 
 애플리케이션 업데이트 수행 으로 배터리 수명 이 영향 을 받 는 정도 는 기기 의 배터리 수준 과 충전 상태 에 따라 달라집니다 . 기기 가 AC 전원 에서 충전 될 때 업데이트 수행 이 미치 는 영향 은 무시 할 만 한 수준 이 므로 , 대부분 기기 가 콘센트 에 연결 되 어 있 으면 새로 고침 비율 을 최대 화 할 수 있 습니다 . 반 대로 기기 가 방전 되 고 있 으면 업데이트 비율 을 낮추 는 것 이 배터리 수명 연장 에 좋 습니다 . 
 마찬가지 로 배터리 충전 수준 을 검사 하 고 , 배터리 충전 량 이 거의 소모 되 었 을 때 업데이트 빈도 를 낮추 거나 심지어 중단 할 수 도 있 습니다 . 
 현재 충전 상태 를 확인 하 는 작업 부터 시작 합니다 . BatteryManager 는 충전 상태 를 포함 하 는 접착 식 Intent 에서 모든 배터리 와 충전 세부 정보 를 브로드 캐스트 합니다 . 
 접착 식 인 텐트 이 므로 BroadcastReceiver 를 등록 할 필요 가 없 습니다 . 다음 스니 펫 에서 와 같이 registerReceiver 를 호출 하 여 null 을 수신기 로 전달 하 면 현재 배터리 상태 인 텐트 가 반환 됩니다 . 여기 서 실제 BroadcastReceiver 객체 를 전달 할 수 도 있 지만 나중 세션 에서 업데이트 를 처리 할 것 이 므로 필요 하 지 않 습니다 . 
 USB 나 AC 충전기 로 충전 할 때 어느 것 을 사용 하 든 현재 충전 상태 와 기기 충전 여부 를 추출 할 수 있 습니다 . 
 일반 적 으로 기기 가 AC 충전기 에 연결 되 어 있 으면 백그라운드 업데이트 비율 을 최대 화 하 고 USB 로 충전 할 때 는 이 비율 을 낮 춥니다 . 배터리 가 방전 중 일 때 는 이 비율 을 더욱 낮 춥니다 . 
 충전 상태 는 기기 를 꽂 는 정도 로 쉽 게 변경 할 수 있 으므로 충전 상태 가 바뀌 는지 모니터링 하 고 그 에 따라 새로 고침 비율 을 변경 합니다 . 
 BatteryManager 는 기기 가 전원 에 연결 되 거나 연결 이 해제 될 때 마다 동작 을 브로드 캐스트 합니다 . 앱 이 실행 되 지 않 을 때 도 이런 이벤트 를 수신 하 는 것 이 중요 합니다 . 특히 , 이런 이벤트 는 백그라운드 업데이트 를 시작 하 기 위해 앱 을 시작 하 는 횟수 에 영향 을 미칩니다 . 그러므로 인 텐트 필터 에서 ACTION _ POWER _ CONNECTED 와 ACTION _ POWER _ DISCONNECTED 를 정의 하 여 매 니 페스트 에 BroadcastReceiver 를 등록 해야 합니다 . 
 연결 된 BroadcastReceiver 구현 에서 는 이전 단계 에서 설명 하 였 듯이 현재 충전 상태 와 메서 드 를 추출 할 수 있 습니다 . 
 현재 배터리 수준 을 확인 하 는 것 이 유용 할 때 도 있 습니다 . 배터리 충전 이 특정 수준 이하일 때 는 백그라운드 업데이트 비율 을 낮출 수 있 습니다 . 
 다음 과 같이 배터리 상태 인 텐트 에서 현재 배터리 수준 과 규모 를 추출 하 여 현재 배터리 충전 에 대해 알아봅니다 . 
 배터리 상태 를 쉽 게 지속 적 으로 모니터링 할 수 는 없 지만 , 그렇게 해야 할 필요 도 없 습니다 . 
 일반 적 으로 배터리 수준 을 지속 적 으로 모니터링 하 는 작업 이 앱 의 평소 동작 보다 배터리 에 더 큰 영향 을 미치 므로 배터리 수준 에 중요 한 변화 가 있 을 때 , 특히 기기 가 낮 은 배터리 상태 에 들어가 거나 여기 서 종료 될 때 만 모니터링 하 는 것 이 좋 습니다 . 
 아래 매니 페스트 스니 펫 은 브로드 캐스트 수신기 내 의 인 텐트 필터 요소 에서 추출 되 었 습니다 . 수신기 는 ACTION _ BATTERY _ LOW 와 ACTION _ BATTERY _ OKAY 를 수신 대기 하 고 있 다가 기기 배터리 가 낮 아 지 거나 저 전력 상태 에서 나갈 때 마다 트리거 됩니다 . 
 일반 적 으로 는 배터리 가 매우 낮 을 때 모든 백그라운드 업데이트 를 비활성 화 하 는 것 이 좋 습니다 . 사용 하 기 도 전 에 전화 가 꺼져 버린다면 아무리 최신 데이터 도 소용 없 습니다 . 
 대부분 기기 를 충전 하 는 동작 은 기기 를 도킹 하 는 것 과 동시 에 일어납니다 . 다음 과정 에서 는 현재 도 크 상태 를 확인 하 고 기기 도킹 의 변화 를 모니터링 하 는 방법 을 보여 줍니다 .