我想获取插入到设备中的sim卡的手机号码。我知道作为android SDK的TelephoneManger
是我们可以通过getLine1Number()
方法获取它的类。但它总是返回空值。
查询:
设备?
还取决于设备吗?
最佳答案
您使用的是正确的并且是普通用户可用的唯一方法(AFAIK)。它主要取决于SIM卡(不是必须具有),并且在某些情况下可能取决于设备(getLine1Number()的实现不正确)。
更准确地说,IMSI唯一地标识SIM。但是MSISDN(订户号)与SIM卡不是唯一相关的,因为可以在SIM卡上更改MSISDN。网络可能会使用来自SIM卡的IMSI在HLR中找到MSISDN并建立调用。
因此,MSISDN并非必须位于SIM卡上。
关于android - 从真实设备获取手机号码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4967459/