GeminiPhone.java/PhoneBase.java中提供了一个API: invokeOemRilRequestStrings(),通过该API可以将具体的at cmd命令下发并将命令执行结果返回给上层。
Demo code如下:
查询IMEI号
import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneFactory;
import com.android.internal.telephony.gemini.GeminiPhone;
Phone phone;
phone = PhoneFactory.getDefaultPhone();
String ImeiString[]=new String[2];
ImeiString[0] = {"AT+EGMR=0,7"};
ImeiString[1] = {"+EGMR"}; //第二个string必须有,且名字是此AT名字,主要给rild用,不会下给modem;否则不会通过此channel返回上来response
((GeminiPhone) phone).invokeOemRilRequestStrings(ImeiString,mHandler.obtainMessage(EVENT_GET_IMEI_DONE_1));
public void handleMessage(Message msg) {
switch (msg.what)
{
case EVENT_GET_IMEI_DONE_1:
ar = (As