티스토리 뷰
안드로이드 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
'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 |
- Total
- Today
- Yesterday
- 무료 채굴
- android flag activity
- task
- WEMIX
- 안드로이드 서비스
- 리워드앱
- android activity flag
- Android Service
- android intent
- onCreateContextMenu
- StringUtils
- p2e
- Intent
- 무료채굴
- 앱테크 추천
- mPANDO
- M2E
- notifyDataSetChanged
- onContextItemSelected
- StartService
- RoomDatabase
- registerForContextMenu
- task 생성
- 안드로이드 인텐트
- 채굴앱
- 리워드 어플
- BroadcastReceiver
- android task
- 앱테크
- bindservice
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |