在我的应用程序中,我想导入我的手机号码。我知道电话联系是由ContactsContract API导入的,但是我要求输入自己的手机号码,这很明显,在手机联系人详细信息中没有。
答案 0 :(得分:3)
TelephonyManager tMgr
=(TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE);
mPhoneNumber = tMgr.getLine1Number();
但请注意,不能保证你得到它(所以检查NULL)。
答案 1 :(得分:2)
手机号码通常不再通过电话API提供。如果您在设置中可以看到正确的电话号码 - >关于手机 - >状态然后是的,你会得到它。但否则,不。我有几部手机运行Android 2.3,4,4.1和4.2,但没有一部手机显示与SIM卡相关的电话号码。
没有电话号码不应该是一个主要的问题。一段时间以来,我一直在研究SMS应用程序,并在几个月前得出结论,我根本不需要知道手机号码 -
如果您有充分理由需要手机号码,那么使用联系人提供商可以访问设备的联系人卡片,该联系人卡片上可能有一个或多个手机号码(或根本没有!)。我的建议是使用这条路线获取可用的号码,然后让用户选择一个手机号码,并给他们输入一个号码,如果它是“以上都不是”。
如果您想验证该号码,您可以从手机发送短信给自己或使用短信服务向手机发送信息(有点像在网络上创建帐户时必须确认电子邮件地址位点)。