RIL-Java在本質上就是一個RIL代理,起到一個轉發的做用,是Android Java概念空間中的電話系統的起點。在RIL-D的分析中,咱們知道RILD創建了一個偵聽套接口,等待RIL-Java的鏈接。一旦鏈接成功,RIL-JAVA就可發起一個請求,並等待應答,並將結構發送到目標處理對象。在RIL-Java中,這個請求稱爲RILRequest。爲了直觀起見,我仍是不厭其煩的給出RIL-Java的框架圖。java
(1) Command Interface框架
在ril.java源代碼中,咱們能夠看到RIL-JAVA對象提供了以下的Command Interface:函數
… getlccCardStatus getCurrrentCalls dial acceptCall rejectCall sendDTMF sendSMS setupDataCall setRadioPower …
爲何要定義這些接口呢?這函數接口不是憑空捏造出來的,這些都是電話的基本功能的描述,是對Modem AT指令的提煉抽象。大多數Modem都是根據通信協議提供接口,咱們若是不熟悉通信協議,請參閱3GPP的相關文檔,以及本身使用的Modem的SPEC說明。代理
V.25ter AT Commands 3GPP 07.07 AT Comamnds-General commands 3GPP 07.07 AT Comamnds-Call Control commans 3GPP 07.07 AT Comamnds-Network Service related commands 3GPP 07.07 AT Comamnds-MT control and status command 3GPP 07.07 AT Comamnds-GPRS Commands 3GPP 07.07 Mobile Termination Errors 3GPP 07.05 SMS AT Commands