首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MSISDN :它是SIM卡数据吗?为什么所有提供的功能(从黑莓和Android)获取MSISDN不可靠?

MSISDN :它是SIM卡数据吗?为什么所有提供的功能(从黑莓和Android)获取MSISDN不可靠?
EN

Stack Overflow用户
提问于 2012-05-22 04:06:54
回答 3查看 33.7K关注 0票数 15

关于MSISDN,我有几个问题。我明白:

  1. MSISDN基本上是电话号码
  2. ,不是IMSI

我需要进一步了解的是:

  1. 是在SIM卡中烧毁(存储) MSISDN号码吗?如果是,是否所有供应商都确保SIM卡中有MSISDN信息?如果不是,需要澄清的是,没有一个编程代码能够获取MSISDN编号?
  2. --一些人建议将MSISDN取为下面的代码。但是,如果设备中没有设置“我的电话号码”,则这两个代码都返回null。另一方面,它将返回“我的电话号码”,如果它是设置的。因此,问题是:“我的电话号码”等于MSISDN?

TelephonyManager.getLine1Number(); ->用于Android

对于上面的Blackberry

  • As代码,返回字符串数据是从设备本身或从SIM卡?

获取的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-21 09:45:24

我对这件事有一些见解。

  1. MSISDN可以存储在SIM卡上,但是大多数网络提供商(南非的所有提供商)都不将MSISDN存储在SIM卡上。这有几个原因,最值得注意的是:
    • 动态MSISDN分配:预付费SIMs在首次使用时有时会被分配给MSISDN。这意味着网络有一个可用的MSISDN池,并在新的预付费SIM联机时分配它们。这意味着当SIMs发货时,它们还没有MSISDN,这意味着您无法在发送SIMs之前存储MSISDN。一些网络的MSISDN分配在一段时间后“过期”,特别是在可用号码较低的情况下,并将这些号码返回到可用池中。
    • 移动号码可移植性:一些国家允许移动用户保留其MSISDN,但改变网络。这意味着MSISDN将从用于1个网络的SIM移动到另一个network.

的SIM。

因此,用户通常以SIM上的MSISDN条目为空结束。用户仍然可以将MSISDN存储在SIM上,但这也允许他们存储任意号码,而且也不能保证设置或甚至是订户的实际电话号码。

你问的那些电话是关于取存储在SIM卡中的号码的。如果没有设置数字,您将得不到它,如果用户设置了错误的号码,那么您将得到不正确的详细信息。

正确,这个字符串是从SIM本身获取的。

我检测MSISDN的唯一半可靠的方法是,当移动运营商将MSISDN包含在标头中时,通过WAP/WEB (您可以执行一些webview技巧来查看报头)--但是,只有当网络支持它和用户在移动数据上时,才能看到这些方法--也就是说,如果用户在WiFi上,它就不能工作。

我能想到的另一种机制(我能想到的唯一保证机制)是通过USSD会话,因为您总是从操作符那里获得正确的MSISDN,但是我还没有找到一种以编程方式打开USSD会话并读取响应(至少在Android中)的方法。我有一个USSD服务,它的唯一输出是MSISDN,但不幸的是,它还没有被证明对我有用。

票数 27
EN

Stack Overflow用户

发布于 2012-05-22 05:44:19

既然在你发帖后的最后一个小时里没有人回答我的问题,下面是我所知道的(虽然我不是这方面的专家,只是有一些经验):

  1. MSISDN是电话号码;人们可以打电话给您。
  2. 不能“刻录”到sim卡中,因为您可以更改sim卡(升级或更改为其他运营商),并保留您的电话号码= MSISDN。我认为在操作员有一个映射表,从sim卡ID到MSISDN,并在呼叫/数据传输时返回。MSISDN可能存储在卡上.
票数 1
EN

Stack Overflow用户

发布于 2016-10-12 14:42:09

您应该考虑到MSISDN具有BIGINT类型。因此,输出它可以提前进行类型转换,如下所示

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10695601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档