ndroid的RIL和RILD的通讯是负责连接上层应用程序和底层modem,所以RIL和RILD的通讯是Android通讯的关键技术,对于不同硬件基带,只需要在RILD作对应的修改,即可以完成android通讯功能在不同硬件环境,不同的基带上的实现。按照方式消息可分为两类,第一类是从上层发送数据,然后经过RIL将数据打包,发送到RILD库层,转换成AT命令,发送给modem,处理后,由modem发送反馈信息,通过然后由RILD和RIL的反馈到上层,这样表示一次数据的发送成功,以发短信为例,其实现流程图:4.1.建立RILSender线程,通过sokcet向rild发送数据4.2.建立dispatch线程,接受由socket发送过来的数据,4.3.获取到对应的dispath函数,然后将数据解析成AT命令,通过onRequest发送请求,writeline写到初始化打开的设备中。4.4.建立线程readerLoop监听来自modem得反馈信息,转化层上层能够识别的数据包4.5.将接收的数据和信息往上发,反馈给ril层8.建立RILReceiver线程,处理由下层反馈上来的信息,给应用层处理第二类是由modem直接上报的消息,通过RILD和RIL将数据发送给上层对应的应用程序,然后由应用程序解析数据。其实现流程图:这里的实现过程与上层发送数据之后的反馈过程大致相同,只是在中的处理方式不同,由OnUnsolicitedResponse()来进行处理直接由modem上报上来的信息。5.结论结论本设计通过RIL(RadioInterfaceLayer)和RILD(RadioInterfaceLayerDeamon)连接了上层应用程序和底层的modem,由于RIL与RILD数据通过打包传输,只需根据所用硬件修改RILD对数据的解析以及反馈部分的代码就可以将Android移植到不同的modem和不同的硬件环境,即可以保证通信的顺利进行,所以,本文对Android到不同硬件环境以及modem的移植有较强的指导意义和
学习作用。