반응형
Doze and Stanby public reference
https://developer.android.com/training/monitoring-device-state/doze-standby?hl=ko
잠자기 및 앱 대기 모드에 맞게 최적화 | Android 개발자 | Android Developers
앱에서 Android 6.0의 절전 기능을 테스트하고 최적화합니다.
developer.android.com
절전모드로 진입하게 된다면, 아래와같은 제한사항이 생긴다.
FCM을 사용해 주기적으로 활성화 시키는 방법도 있지만, 앱단에서 해결할 수 있는 방법은 아래의 코드와 같다.
제한사항
- 네트워크 엑세스 정지
- wake lock 무시
- 유지보수 기간 지연
- 동기화 어댑터 실행 X
- JobScheduler 실행 X
매니페스트에 권한 선언
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
절전모드 미진입 요청하기
val pm = getSystemService(POWER_SERVICE) as PowerManager
val packageName = packageName
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){
if (pm.isIgnoringBatteryOptimizations(packageName)) {
} else {
val intent = Intent()
intent.action = Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
intent.data = Uri.parse("package:$packageName")
startActivityForResult(intent, 0)
}
}
이렇게 요청하게 되면 사용에게 아래와 같이 묻게 된다.
반응형
'IDE & Framework > Android' 카테고리의 다른 글
[짧] FCM을 통해 앱 삭제여부 확인 (1) | 2023.03.24 |
---|---|
Permission 처리를 좀 더 쉽게 하려면? TedPermission! (0) | 2022.05.23 |
[짧] Android aar에 application proguard 규칙 적용시키기 (0) | 2022.04.07 |
[Kotlin] Android Room Database 기본 예제 (0) | 2022.03.01 |
[Kotlin]Android Firebase Cloud Message(FCM) - (1) Client (0) | 2022.02.26 |