我需要截取当用户在SIM卡的STK菜单中选择一个选项时发送的命令。
我已经搜索了很多,我看到有RIL协议,但我还没有成功。
在我的例子中,我需要知道模拟sim卡的支票余额的命令。
我正在开发一个应用程序,发送此命令并处理收到的消息。
当我触摸列表中的"check balance“选项时,会显示以下日志
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
发布于 2014-11-17 22:06:36
两种类型的命令可以发送到CP(调制解调器),可以在CatService.java中截获
1)信封:
private void sendMenuSelection(int menuId, boolean helpRequired)2)终端响应:
private void sendTerminalResponse(CommandDetails cmdDet,
ResultCode resultCode, boolean includeAdditionalInfo,
int additionalInfo, ResponseData resp)发布于 2017-06-30 14:22:30
对于您发布的日志,当您触摸列表中的"check balance“选项时,会将一些终端响应(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当modem获得终端响应时,它会向特定的运营商发送一条短信,然后您可能会收到一条关于余额信息的消息。注意短信不是从Android发送的,它是由调制解调器中的Stk触发的。
https://stackoverflow.com/questions/24245181
复制相似问题