AIDL-2
2023-12-28 19:28:15 0 举报
AIDL-2(自动生成的数据分析语言-2)是一种用于处理和分析数据的编程语言。它旨在简化数据的处理和分析过程,通过提供一种直观的、接近自然语言的方式来描述数据处理任务。AIDL-2支持各种常见的数据操作,如过滤、排序、聚合和分组等,同时允许用户自定义函数和算法。这种语言适合数据分析师、数据科学家以及其他需要处理和分析数据的人员使用。使用AIDL-2,用户可以快速、轻松地处理和分析数据,提高工作效率。
作者其他创作
大纲/内容
服务启动
【AMS】根据targetService的句柄创建BinderProxy对象作为IBinder的实例
【IServiceConnection】target->transact,通过IServiceConnection句柄调用其APP进程的onTranct方法
这里的targetService其实是底层的对象句柄
系统服务所在的进程
【ApplicationThread】执行对应方法,启动Application
将targetService 的句柄写入parcel
【AMS】onTranct()方法触发
【ApplicationThread】onTranct()方法触发
【IAMS】parcel->writeStrongBinder (targetService)
ActiveServices
【IAMS】parcel->writeStrongBinder(传入serviceConnection的句柄)
BinderProxy对象里包含targetService的句柄
【ServiceConnection】根据targetService的句柄创建BinderProxy对象作为IBinder的实例
【IAMS】target->transact,通过AMS句柄调用其服务进程的onTranct方法
当前APP所在的进程
【ServiceConnection】onTranct()方法触发
AIDL
ServiceConnection
【IServiceConnection】parcel->writeStrongBinder(继续传入targetService的句柄)
通过IServiceConnection传递IBinder
这里是借助AMS的来传递targetService对象
【IApplicationThread】target->transact,通过IApplicationThread句柄调用其服务进程的onTranct方法
服务APP所在的进程
返回Stub对象
connect方法返回IBinder(targetService的BinderProxy对象)
调用对应Service的onBind方法
bindService(ServiceConnection)
使用IServiceConnection
拿到对应服务的IBinder对象后
【AMS】根据serviceConnection的句柄创建BinderProxy对象作为IServiceConnection的实例
0 条评论
回复 删除
下一页