安卓RILC流程简单分析

本文以以下三个方向梳理安卓RILC的工作流程,不贴代码,只通过流程图的方式帮助同学们建立一个整体认识。

整体框架

图片发自App


初始化

图片发自App

初始化完成主要完成两个工作,第一是创建一个读线程处理来自硬件的数据,这个数据一类是硬件主动上报的数据,这里理解为事件,另外一类是硬件对上层命令的响应。

初始化完成的另外一个工作是创建RIL EVENT多路IO复用线程,用来读取来自上层JAVA的命令。

数据发送

图片发自App

上层发送数据的时候,如需要底层响应,则会休眠等待底层设备响应。流程图中红色步骤所示

从底层获取event数据

图片发自App


命令响应返回

图片发自App

读线程在获取到硬件数据之后,分析数据帧,发现是命令响应帧,则会唤醒在RIL EVENT中发送命令等待的线程(虚线所示)

你可能感兴趣的:(安卓RILC流程简单分析)