截取SIM STK菜单上的命令

时间:2014-06-16 13:42:11

标签: ril stk

我需要拦截当用户在SIM卡的STK菜单中选择一个选项时发送的命令。

我已经搜索了很多,我看到有RIL协议,但我还没有成功。

在我的情况下,我需要知道模拟SIM卡支票余额的命令。

我正在开发一个发送此命令的应用程序并处理收到的消息。

以下日志显示在我触摸"检查余额"的确切时刻。列表中的选项

06-11 09:29:27.388: D/CAT(944): CatService: 10arrived on slotid: 0 06-11 09:29:27.398: D/CAT(944): CatService: SEND_SMS 06-11 09:29:27.398: D/CAT(944): CatService: Sending CmdMsg: com.android.internal.telephony.cat.CatCmdMessage@41f6d030 on slotid:0 06-11 09:29:27.428: D/CAT(944): StkAppService: 1called on slot:0 06-11 09:29:27.428: D/CAT(944): StkAppService$ServiceHandler: SEND_SMS 06-11 09:29:28.700: D/PhoneInterfaceManager(944): Broadcasting intent ACTION_UNSOL_RESPONSE_OEM_HOOK_RAW

2 个答案:

答案 0 :(得分:0)

可以向CP(调制解调器)发送两种类型的命令,可以在 CatService.java

中拦截

1)EVELOPE:

private void sendMenuSelection(int menuId, boolean helpRequired)

2)终端响应:

private void sendTerminalResponse(CommandDetails cmdDet,
        ResultCode resultCode, boolean includeAdditionalInfo,
        int additionalInfo, ResponseData resp)

答案 1 :(得分:0)

对于您发布的日志, 当您触摸"检查余额"列表中的选项, 某些终端响应(pdu)被发送到调制解调器,如果您感兴趣,可以打印原始十六进制字节。

06-11 09:29:27.388: D/CAT(944): CatService: 10arrived on slotid: 0
06-11 09:29:27.398: D/CAT(944): CatService: SEND_SMS

当调制解调器获得终端呼叫时,它会向特定运营商发送短信,然后您可能会收到有关余额信息的消息。请注意,短信不是从Android发送的,它是由调制解调器中的Stk触发的。