반응형
안드로이드 인터페이스 정의 언어 (AIDL)
Service다루는 방법 1
startService() / stopService() 를 이용해서, 특정 Service 를 시작 하거나 종료.
Service다루는 방법 2
bindService()를 이용해서, Service 의 IBinder 객체를 얻어온 후, 해당 Service 에서 정의된 API 를 호출
- API호출방법1 - local service
Service와 Service를 이용하는 어플리케이션이 항상 동일한 Process 에서 작동하는 경우에 해당.
이 경우 bindService() 의 결과로 바로 해당 Service 에 접근해서 원하는 API 를 호출할 수 있다.
- API호출방법2 -Remote Service
실재로 Service가 돌고 있는 Process가 아닌 다른 Process에서 API 를 호출 하고자 할 때는
반드시 IBinder 와 AIDL을 통해 RPC(Remote Procedure Call)이 이루어져야 한다.
AIDL ( Android Interface Definition Langage ) 는 IPC의 한 역할로,
서로 다른 프로세스 에서 Class를 공유하고자 할 때 사용.
Document: https://developer.android.com/guide/components/aidl
반응형
'Android > Android 일반' 카테고리의 다른 글
핸들러(Handler), 루퍼(Looper), 메시지큐(Message Queue) (0) | 2019.03.26 |
---|---|
Service(unbind, bind) (0) | 2019.03.25 |
Nought(7.0)미만 WifiManager 메모리 누수 문제 (0) | 2019.03.21 |
Intent Flag (0) | 2019.03.20 |
AVD(에뮬레이터) 삭제하는 방법 (0) | 2019.03.20 |