서비스는 특정 액티비디와 상관 없이 백그라운드에서 실행되는 컴포넌트이다. 그래서 화면을 구성하는 레이아웃을 작성할 필요가 없다. 그러므로 지속적으로 장시간 동작해야하는 기능(블루투스, 와이파이 연결, GCM notification listener 등)이 있다면 서비스로 구현 해야한다.
1 2 3 4 5 6 7 8 9 10 11 12 | public class MyService1 extends Service { public void onCreate() { Thread t = new Thread() { void run() { } }; t.start(); } public void onDestroy() { } } |
서비스 클래스를 상속받아서 구현한다.
서비스의 생명 주기는 2가지로 분류가 된다
로컬 서비스를 구현할 때와
원격 서비스를 구현할 때이다
로컬 서비스
onCreate() | 서비스가 생성될때 호출된다 |
onStart() | startService() 메소드에 의해 서비스가 시작될때마다 호출된다 |
onDestory() | 서비스가 종료될때 호출 |
원격 서비스
onCreate() | 서비스가 생성될때 호출된다 |
onBind() | bindService() 메소드에 의해 서비스가 시작될때 호출된다. |
onUnbind() | 서비스와 연결이 끊겼을 때 호출된다. |
onDestroy() | 서비스가 종료 될때 호출된다. |
Intent myintent = new Intent(this, (이동할 액티비티 이름).class);
startActivity(myintent);
Intent Service = new Intent(this, (실행할 서비스 이름).class);
startService(Service);
'Programming > Android' 카테고리의 다른 글
xml include (0) | 2016.09.15 |
---|---|
View (0) | 2016.09.07 |
R (0) | 2016.09.05 |
안드로이드의 구성요소 요약 (0) | 2016.09.05 |
Thread (백그라운드에서 UI변경) (0) | 2016.09.03 |