我想知道是否有人有一些例子说明我如何使用 RIL 常量发送 RIL 请求,例如
RIL_REQUEST_GET_SIM_STATUS
RIL_REQUEST_DIAL
RIL_REQUEST_SEND_SMS
以及如何使用 Android java base API 从请求中获取结果。
方法可以在RIL.java中找到
发送 RIL 请求的示例:
import com.android.internal.telephony.PhoneFactory;
import com.android.internal.telephony.PhoneBase;
PhoneBase phone = (PhoneBase)PhoneFactory.getDefaultPhone();//or PhoneFactory.getPhone(SIM_ID);
//RIL_REQUEST_GET_SIM_STATUS
phone.mCi.getIccCardStatus(result);
//RIL_REQUEST_DIAL
phone.mCi.dial (address, clirMode, result);
//RIL_REQUEST_SEND_SMS
phone.mCi.sendSMS (smscPDU, pdu, result);
结果是在调用上述方法之前与Handler绑定的Message,一旦完成,就会将相应的结果Message发送给Handler,从result.obj中获取。解码结果的样本可以在以下文件中找到,
RIL_REQUEST_GET_SIM_STATUS:UiccController.java
RIL_REQUEST_DIAL:GsmCallTracker.java
RIL_REQUEST_SEND_SMS:GsmSMSDispatcher.java