Android 如何确定对移动电话号码的呼叫是本地还是STD或ISD

Android 如何确定对移动电话号码的呼叫是本地还是STD或ISD,android,telephony,Android,Telephony,我正在为android开发某种应用程序,但不知道如何获取被叫号码是本地号码或STD号码的数据 i、 e.手机号码检查器等应用程序从何处获取数据? 注意:我指的是手机号码,而不是固定电话号码。您得到的号码是字符串类型。因此,您可以获取数字的前几个数字,并使用包含std代码(如果有)的数据库进行查询。祝你好运 有关ISD的确定,请参阅 以下是印度本地和STD电话的答案 假设,您知道呼出呼叫将进入哪个州(电信圈)。然后,您只需要检查您的本地状态(电信圈)是否与传出呼叫状态(电信圈)相同。如果是相同的

我正在为android开发某种应用程序,但不知道如何获取被叫号码是本地号码或STD号码的数据

i、 e.手机号码检查器等应用程序从何处获取数据?


注意:我指的是手机号码,而不是固定电话号码。

您得到的号码是字符串类型。因此,您可以获取数字的前几个数字,并使用包含std代码(如果有)的数据库进行查询。祝你好运

有关ISD的确定,请参阅

以下是印度本地和STD电话的答案

假设,您知道呼出呼叫将进入哪个州(电信圈)。然后,您只需要检查您的本地状态(电信圈)是否与传出呼叫状态(电信圈)相同。如果是相同的,则本地调用else STD调用


现在,问题归结为,如何找到传出呼叫的状态(电信界)

在我们专门设置STD代码的固定电话上,这很容易做到。有关州和州标准代码,请参见。

有趣的是,手机也遵循一些非常相似的规则。手机号码的前4位表示。例如,假设号码是999xxxxxx,那么这个号码来自德里-沃达丰。请参阅完整的手机前4位详细信息。

谢谢Sriniketh,但我没有该号码数据库。所以我的问题是如何获取数据库?但还有。。9999xxxxxx可以移植到卡纳塔克邦的电信圈。所以这对这样的数字不起作用。对于端口号有什么解决方案吗?