AIDL 進程間通信
bindService(intent,serviceConnection,0);
handleCreateService 啟動服務
service.onCreate()
真正實現(xiàn)類是ContextImpl,在其bindService方法中調(diào)用
獲取系統(tǒng)服務ActivityManagerNative 繼承Binder實現(xiàn)IInterface接口浑槽,
ActivityManagerService是ActivityManagerNative真正實現(xiàn)類
因此真正的bindService在這里
ActivityService requestService
scheduleBindService (IApplication接口里面屑墨,實現(xiàn)類
ActivityThread)
scheduleBindService
handleBindService方法里面調(diào)用
IBinder binder = Service.onBind(data.intent)
ActivityManagerNative .publishService公開服務
怎樣寫數(shù)據(jù)?
translate寫到IBinder驅動里面的
RemoteService什么時候被注冊到共享內(nèi)存中?
首先Stub被new出來乘碑,默認構造函數(shù)初始化,最終會調(diào)
Binder類的native的init方法
進程A B