Android 找出OUGONG呼叫是电话呼叫还是数据请求

Android 找出OUGONG呼叫是电话呼叫还是数据请求,android,phone-number,Android,Phone Number,我正在开发一个Android应用程序,它接收OUGONG呼叫事件并从中提取目标地址,取消呼叫以进行某些处理,然后自动重拨相同的地址号码,而无需用户的意愿 问题是:我不想处理不是真实目的地电话地址的目的地号码(即像*21这样的USSD号码,它向某些运营商发出一些数据请求)如何在不维护任何表格的情况下,通过友好方式确定传出目的地是电话还是来自接线员的数据请求?一种可能的方法是检查号码是否与USSD的格式匹配: 典型的USSD消息以*开头,后跟数字 指示要执行的操作或参数。每组 数字以*分隔,消息以#

我正在开发一个Android应用程序,它接收OUGONG呼叫事件并从中提取目标地址,取消呼叫以进行某些处理,然后自动重拨相同的地址号码,而无需用户的意愿


问题是:我不想处理不是真实目的地电话地址的目的地号码(即像*21这样的USSD号码,它向某些运营商发出一些数据请求)如何在不维护任何表格的情况下,通过友好方式确定传出目的地是电话还是来自接线员的数据请求?

一种可能的方法是检查号码是否与USSD的格式匹配:

典型的USSD消息以*开头,后跟数字 指示要执行的操作或参数。每组 数字以*分隔,消息以#结尾


USSD的最大长度为182个字符。

如果它有星号或磅号,则可能不是电话号码。我相信所有的USSD代码都有一个磅号或星号。但是一个真正的电话号码也可能包含星号——一个像*4444.hmm的短号码。。这是典型的USSD请求格式。我要澄清我的问题:我不想知道这个号码是否是USSD,但想知道这个号码是否是一个真正的电话号码,实际上会引起语音呼叫-我想区分那个拨号类型和其他类型,如果是在其他类型,我不想知道这是USSD还是一些拨号错误…所以澄清一下,你说的只是GSM电话吗?不是通过VoIP或Skype拨打的电话?