进程通信AIDL之Binder分析

2016-11-13  本文已影响12人  左上偏右

AIDL 进程间通信

bindService(intent,serviceConnection,0);

handleCreateService 启动服务
service.onCreate()

真正实现类是ContextImpl,在其bindService方法中调用
获取系统服务ActivityManagerNative 继承Binder实现IInterface接口,

ActivityManagerService是ActivityManagerNative真正实现类
因此真正的bindService在这里
ActivityService requestService

scheduleBindService (IApplication接口里面,实现类

ActivityThread)
scheduleBindService
handleBindService方法里面调用
IBinder binder = Service.onBind(data.intent)

ActivityManagerNative .publishService公开服务

怎样写数据?
translate写到IBinder驱动里面的

RemoteService什么时候被注册到共享内存中?
首先Stub被new出来,默认构造函数初始化,最终会调
Binder类的native的init方法


进程A B

上一篇下一篇

猜你喜欢

热点阅读