Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
Tags
- Flutter TextField
- NDK
- 알고리즘
- 프로그래머스
- livedata
- Android
- Java
- Rxjava2
- 안드로이드 구글맵
- android push
- flutter firestore
- UWP
- Django REST
- dart
- Django REST Android
- C/C++
- 코틀린
- C++
- FLUTTER
- RxAndroid
- Python
- Android P
- android architecture component
- C
- mfc
- Kotlin
- 안드로이드
- RxJava
- kodility
- Django REST framework
Archives
- Today
- Total
개발하는 두더지
Android Oreo 적용시 확인해야될 사항 본문
Android Oreo 적용시 확인해야될 사항
1. 서비스 백그라운드 제한
- 백그라운드에서 어떤 동작을 하는 서비스를 만들때 startService 메서드를 포그라운드 상태를 제외하면 사용하지 못함.
대신, startForegroundService 를 사용하면 되는데, 5초 가량 백그라운드에서 작업이 진행된다는 알림이 보여줘야 함.
액티비티의 onCreate에서 startForegroundService로 백그라운드 서비스를 실행시키고 5초안에 백그라운드 서비스의 onCreate에서 startForeground 메서드를 통해 현재 백그라운드 작업이 진행중임을 Notification을 띄워서 보여주면 ANR이 발생하지 않음.
주의할 점은 서비스가 종료할때 Notification도 stopForeground로 가능한 빨리 종료시켜줘야 하고, Notification의 priority를 IMPORTANCE_LOW로 설정해서 소리가 나지않게 해야함
- IntentService 대신 JobIntentService 사용
2. 브로드캐스트 리시버
- 안드로이드 7.0 보다 더 엄격해진 제한
- 명시적 브로드캐스트를 제외하고는 AndroidManifest에 등록할 수 없음
- 암시적 브로드캐스트 예외를 제외하고는 런타임에 브로드캐스트에 등록할 수 없음
3. 알림
- 채널이란게 생겨서 알람마다 채널을 만들어서 중요도를 설정할 수 있음
'Java,Android' 카테고리의 다른 글
Android Studio .idea 폴더의 파일들은 무슨 역할을 하는 것인가? (0) | 2019.01.17 |
---|---|
[Android] 안드로이드 데이터베이스 Room vs Realm (1) | 2018.12.12 |
[Effective Java 규칙75] 사용자 지정 직렬화 형식을 사용하면 좋을지 따져보라 (0) | 2018.11.27 |
[Effective Java 규칙74] Serializable 인터페이스를 구현할 때는 신중하라 (0) | 2018.11.21 |
[Effective Java 규칙71] 초기화 지연은 신중하게 하라 (0) | 2018.11.20 |
Comments