java - 从 Android 手机获取可靠的 MSISDN?语音信箱号码 Line1Number

标签 java android phone-number telephonymanager msisdn

<分区>

首先关闭 MSISDN与电话号码相同。 我一直在研究是否可以从 Andoid 手机上获取电话号码。

我的研究结果是是和否。

可以使用 TelephonyManagergetLine1Number() .然而,这是不可靠的。

我已经用摩托罗拉 Atrix 测试了上述内容,但没有检索到有效的电话号码。那么死在水里对吗?

好吧,我可以使用 TelephonyManager 从电话中获取电话号码和 getVoiceMailNumber() .

我永远不会猜到语音信箱号码会是我的实际电话号码 (MSISDN)。

所以我的问题是要检查 getLine1Number()getVoiceMailNumber()是获取 MSISDN 的可靠方法吗? (即:如果 getLine1Number 返回 0000000000000,则检查 getVoiceMailNumber 或类似的内容。)

在能够从 getVoiceMailNumber() 获取 MSISDN 之前,本网站上没有人提到过这绝对不是显而易见的,并且与文档几乎矛盾,但事实是它适用于我的特定设备。 (未在其他设备上测试)

最佳答案

如果您使用 getVoiceMailNumber(),它不会 100% 可靠。很多时候这可能会提供电话号码,但如果手机获得固件更新并且此号码更改为其他号码怎么办?说一个短代码?所以不,它不可靠。

如果您可以从 getLine1Number() 获取号码,那么为什么不提示用户输入号码?您可以通过向该号码发送带有短代码的 SMS 消息来验证它,用户在继续下一步之前需要在应用程序中输入该短代码。

关于java - 从 Android 手机获取可靠的 MSISDN?语音信箱号码 Line1Number,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7922734/

相关文章:

java - 在 Android 上使用 vosao

mobile - 检测附近的电话号码

java - 如何在android中写一个电话号码用于调用电话但不调用电话

java - 为什么亚马逊 ec2 的性能会下降很多?

java - 如何在hibernate中编写HQL查询来删除所有行而不删除表?

android - OpenGL ES 2.0 1 仅使用最后绑定(bind)纹理

java - 表布局中的数据持久化

android - 正确处理电话号码(存储,最好使用独特的形式)

java - 有没有针对不同语言的稳定的序列化方法?

java - 使用 Gson 将 JSON 转换为 Java 对象