일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- TensorFlow
- spring
- ADAS
- 스프링 프레임워크
- Kotlin
- c
- 연결리스트
- 프로그래밍
- 스프링프레임워크
- 프로그래머스
- git
- c++
- 백트래킹
- 블로그개설
- 스프링
- retrofit
- 머신러닝
- hackerrank
- Map
- 인코더
- BFS
- 안드로이드
- 카카오인코더
- Android
- 백준
- DP
- stl
- vue.js
- Rebase
- python3
Archives
- Today
- Total
이것저것 공부한 기록
[Android] Foreground Service App 만들기 본문
1. Android Studio - New - Empty Project 생성
2. Service 생성
3. Service를 실행해 줄 Default Activity 생성
4. Manifest 수정
- FOREGROUND_SERVICE permission 추가
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
- Application 객체 생성할 시 Manifest의 Application name 지정
<application
android:name=".aaPersonalApplication
...
>
- Application 내 Activity, Service 추가
<application>
<activity
android:name=".AppStartActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<service
android:name=".aaService"
android:configChanges="locale" />
</application>
5. Service 실행
- Notification 채널 등록 및 StartForeground()호출 해줘야 함
val CHANNEL_ID = "aaa_service_channel"
val notificationChannel = NotificationChannel(CHANNEL_ID, "aaa Application",
NotificationManager.IMPORTANCE_LOW)
val nm = getSystemService(NotificationManager::class.java)
nm.createNotificationChannel(notificationChannel)
val notification = Notification.Builder(this, CHANNEL_ID)
.setContentTitle("aaa Service")
.setContentText("aaa service is running")
.build()
startForeground(STOP_FOREGROUND_REMOVE, notification)
* android.app.ForegroundServiceDidNotStartInTimeException
- 안드로이드 12 Targeting application에서 앱 실행 후 포그라운드로 올라오지 못해서 발생하는 Exception
- StartForegroundService로 호출된 Service의 경우 Service 내부에서 StartForeground()를 호출해줘야 함
'Study > Kotlin&Android' 카테고리의 다른 글
[Android] Custom Toast 만들기 (0) | 2024.12.24 |
---|---|
[Android] bindService : unable to start service intent u=0 not found 에러 (0) | 2023.05.23 |
[Android] 어플리케이션 간 파일 공유하기 (broadcast로) (0) | 2022.11.22 |
[Android] Retrofit 서비스 인터페이스 정의 (애너테이션) (0) | 2021.12.12 |
[Android] 서비스 (0) | 2021.11.21 |