0

背景; 我正在编写一个需要知道当前用户电话号码的 Android 消息应用程序。然后将其用于连接到使用该应用程序的其他用户。

我的应用程序依赖于从 Android 的设置 -> 关于电话 -> 电话身份 -> 电话号码中查找用户的号码(有时可能为空白......但这是一个单独的问题)。

我假设上面的电话号码包含用户的完整号码。即,我的英国 Android 手机显示我的号码为:+447832xxxxxxxx,其中 44 是英国的国际拨号代码,7832 是运营商。

假设所有 Android 手机都包含以 + 开头的国际拨号代码是否安全?

如果任何Android用户可以快速查看他们的Android设置并确认电话号码是否显示为+国际代码+运营商+号码,我将不胜感激,即美国Android设备以+1xxxxxx开头。

4

3 回答 3

2

不保证 TelephonyManager.getLine1Number() 是正确的,甚至不保证对应用程序可用。我建议使用 SECURE_ID 来匹配某个用户输入的备份计划,可能是某处服务器上的文本消息验证电话号码。但即使 SECURE_ID 有时也不是唯一标识符(所有 DROID2 手机都有相同的 ID),这意味着您应该依赖某种帐户系统。

于 2010-08-16T14:47:32.093 回答
1

在我的手机(Nexus One、Android 2.2、O2 UK)中,我没有设置 -> 关于手机 -> 手机身份。在设置 -> 状态 -> 我的电话号码是“未知”。不确定这对您有帮助,抱歉。

于 2010-08-15T11:46:17.490 回答
1

在我的 2.2 moto droid 上,我有:设置->关于电话->状态->我的电话号码。仅供参考,它没有以+国际代码为前缀

于 2010-08-16T09:59:47.977 回答