Android App

Service (백그라운드) in Android Studio

YunSeong 2021. 8. 9. 14:44
728x90
반응형

https://youtu.be/lOHku4NXpfA

 

안드로이드에서 앱을 백그라운드 실행을 시키기 위해서 Service를 이용할 수 있다. 

 

 

 

 

 

 

1. Service Class 만들기

Service을 이용하기 위해서 먼저 Service를 상속받는 class를 만들어줘야 한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class ServiceName extends Service {
 
    @Nullable
    @Override
    public IBinder onBind(Intent intent) {...}
 
    @Override
    public void onCreate() {...}
 
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {...}
 
    @Override
    public void onDestroy() {...}
}
cs

위의 onCreate(), onDestory() 함수를 보면 알 수 있듯이 Service 또한 Activity처럼 생명주기를 가진다. 생명주기에 따라서 실행될 코드들을 적어줄 수 있다.

onCreate()는 Service가 처음 호출될 때

onStartCommand()는 Service가 호출될 때마다

onDestroy()는 Service가 중지될 때마다 

호출되는 이벤트들을 정의한다.

 

 

 

 

 

 

2. startService

 

1
startService(new Intent(getApplicationContext(), ServiceName.class));
cs
1
stopService(new Intent(getApplicationContext(), ServiceName.class));
cs

Service를 실행시키고 종료시키기 위해서는 위 두 줄의 코드를 적절하게 사용해서 할 수 있다. 

 

 

하지만 지금은 Manifest에 등록하지 않았기 때문에 제대로 실행되지 않을 것이다. 

그래서 app\manifests\AndroidManifest.xml의 <application> 안에

1
<service android:name=".MusicService"/>
cs

위 코드를 추가해줘야 한다.

 

 

 

 

 

728x90
반응형