Telephony(RIL Java,以下简称RILJ)与RILD(RIL
Daemon)的通信在Android OO8.0以前都是基于socket通信,而Android
8.0则是基于HAL
binder进行IPC的数据交换。有关RILJ与RILD的工作原理可以参考之前的两篇文章:Android
RIL概述以及RILD详解。这篇文章主要分析RILJ与RILD是如何通过HAL
Binder进行通信。
RILJ与RILD的通信,服务端是RILD,客户端是RILJ。对于RILD而言,其对应的HAL接口是/android/hardware/interfaces/radio/1.0/IRadio.hal:

