如何读取/拦截 Android 手机上的 USSD 消息
Posted
技术标签:
【中文标题】如何读取/拦截 Android 手机上的 USSD 消息【英文标题】:How to read/intercept USSD message coming on Android phone 【发布时间】:2015-01-22 07:09:12 【问题描述】:所以直到这一点,我所能想到的就是在 android 4.2.2 之前,我们有两种方法可用:
使用 logcat 并从中提取信息
Runtime.getRuntime().exec(
"logcat -v time -b main PhoneUtils:D");
我使用这段代码阅读了logcat
并在此处找到displayMMIComplete
消息
使用提供的名为 com.android.ussd.IExtendedNetworkService
的意图并监听此意图并执行任务。
所以到目前为止我已经确认的是,从 4.0 开始,此意图已被删除,并且从 4.2.2 开始,logcat
中 USSD 消息信息的打印已被删除?
到这里为止我是对的吗? 其次,现在阅读 USSD 消息的黑客或解决方案是什么,我们必须有某种方法可以通过它?
【问题讨论】:
【参考方案1】:目前还没有 Android 框架提供的 API,可用于以便携式方式“读取/拦截”USSD 消息。
您提到的 2 种方法是目前可用的,但正如您所提到的,Android 开源项目不再支持它。
有一个request/discussion 正在进行,这清楚地表明许多开发人员正在请求此功能,但到目前为止,Google 方面没有更新/沟通来解释未来关于添加对“读取/拦截”USSD 消息的支持的路线图以便携的方式。
【讨论】:
以上是关于如何读取/拦截 Android 手机上的 USSD 消息的主要内容,如果未能解决你的问题,请参考以下文章
使用 USSD 代码启用 SIM/RUIM 锁定 - Android / Airtel India