질문입니다.

현재 google Api demo를 통해서
localservice , localbindservice , remoteserivce , remotebindservice를 구현 테스트 했습니다.


실제로 DDMS를 통해서 process가 기동하는것을 보고 local일때는 같은 process에서 service가 실행되는것을 확인했고.
remote일때는 :remote 프로세스로 잡히는것을 확인했습니다.

localservice일경우 startservice, bindservice를 호출하여 service와 연결하고.
remote일때는 ibinder + aidl를 이용하여 RPC 이용합니다.

자 그럼 여기서 궁금..
localservice는 반드시 같은(동일 PID) process를 사용하는것을 말하지 궁금하여..??

AndroidManifest.xml 를 수정
<service android:name=".LocalService" android:process=":remote"></service>


하고 에뮬을 띄어 보니.. serivce process가 다른 프로세스를 기동되고 서비스연결또한 성공적으로 됩니다.


반대로 remotebindservice에서 
<service android:name=".RemoteService" android:process=":remote">

아래와 같이 수정하여
<service android:name=".RemoteService">



 에뮬을 띄웠더니 동일 프로세스에서 remote service?? 가 실행되는것을 보았습니다.

1)질문.
remote 하면 반드시 다른 프로세스일거라고 생각을 했는데요..
혹시 ibinder + aidl를 사용하더라고 android:process=":remote 추가하지않으면 remote -> local로 바뀌면서 
localservice인것으로 사용이 되는거가 하고 생각이 드는데요? 이게 맞는 소리인지?
2)질문및 자해석
반대로 localservice에서 android:process=":remote 추가하여 remote에서도 service를 할수 있는건지요??
아 이것은 이론적으로 리모트에서 aidl lib가 없으면 remote로 호출이 안되겠네요...
하지만 remote 다른 프로세스로 띠워지긴하니.. 같은 package에서 다른 service를 기동하여 오히려
process를 분리하는 장점이 생기지 않을까 합니다만.


질문이 좀 엉성하져.. 죄송하구요.. 
service쪽에서 이런저런 테스트드해보시거나 개념적으로 정확히 집어주시면 감사하겠습니다.
구현자체는 심플하나. 정확이 이게 이것이다 이런내용이 없네요..



수고하세요 ^^