在我的Android应用程序中获取用户的当前手机号码

时间:2014-08-14 19:37:35

标签: android mobile phone-number

在不要求用户输入他们的手机号码的情况下,我希望获得与该手机相关联的当前手机号码,以便我可以通过获取手机发送有关特定地点或国家/地区可用的优惠和优惠的特定消息我的应用程序第一次安装时的电话号码。在android中有可能吗?如果我能够收集用户的手机号码,是否会有任何与之相关的问题?我想更深入地了解它。所以我的问题的评论和答案非常受欢迎。由于我不知道从哪里开始,所以也欢迎任何教程或相关链接..

2 个答案:

答案 0 :(得分:3)

TelephonyManager mManager =(TelephonyManager)mContext.getSystemService(Context.TELEPHONY_SERVICE);
String mPhoneNumber =  mManager.getLine1Number();

// check if mPhoneNumber is null then there is no number saved in the phone.

并在清单中设置

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

并进一步阅读here

希望它有所帮助:)

答案 1 :(得分:1)

Spurdow的答案是正确的,但只有在系统中有该号码时才有效。并非所有国家和/或无线运营商都支持这一点。我测试了阅读电话号码,它在美国正确地给了我的T-mobile电话号码,而在土耳其的朋友的电话中没有返回号码。因此,相应地计划您的代码(即,检查可能的空结果,向用户询问电话号码等)。欲获得更多信息: https://developer.android.com/reference/android/telephony/TelephonyManager.html#getLine1Number%28%29