티스토리 뷰

Android

배터리 최적화 제외하기

parkho79 2020. 2. 6. 15:34
300x250
300x250



안드로이드 M(6.0, SDK 23) 부터 앱이 백그라운드로 처리하는 작업을 막아 배터리 소모를 줄이는 최적화 기능이 들어있다. 

배터리 소모를 줄이는 것도 좋지만 앱의 작동에 문제가 되는 경우도 많다.

이번 포스팅에서는 배터리 최적화 무시방법을 알아보자.



How to

배터리 최적화 정책은 기본적으로 전체 어플이 대상이 된다. 이 중 필요한 어플을 최적화 정책에서 제외하는 형태인 화이트 리스트 방식을 사용한다.

즉, 배터리 최적화에서 제외하기 위해서는 화이트 리스트에 등록하면 된다.

 

참고로, 화이트 리스트 등록 외 하단의 방법도 있다.

- 알람 매니저 활용

  특정 기능을 수행하기 위해 알람 매니저의 특정 API 를 사용하여 어플 이나 기기를 깨운다.

 

- FCM 활용

  Firebase 의 push message 를 어플로 전송하여 해당 어플을 깨운다.



◼ 어플이 화이트 리스트에 등록되어 있는지 확인



◼ 사용자에게 직접 화이트 리스트 등록 요청



◼ 화이트 리스트 등록 권한 요청

REQUEST_IGNORE_BATTERY_OPTIMIZATIONS 퍼미션이 선언 된 앱은 Google Play 에 앱 등록시 거부될 수도 있다.

해당 퍼미션이 앱 사용에 있어서 반드시 필요한 경우에만 승인을 해준다고 하니 참조하자.

(https://developer.android.com/training/monitoring-device-state/doze-standby#whitelisting-cases)

 

- Manifest permission 코드 추가

 

- 권한 요청 설명



Source code

https://github.com/parkho79/BatteryOptimization



728x90

'Android' 카테고리의 다른 글

AndroidX  (0) 2020.02.12
Gradle 로 여러가지 버전 생성하기  (2) 2020.02.10
Android 에서 XML 을 통한 다국어 지원  (0) 2020.02.04
Shape Drawable 동적으로 색 변경하기  (2) 2020.01.20
Shape Drawable  (0) 2020.01.17
댓글