如何以编程方式获取android手机号码?

如何以编程方式获取android手机号码?,android,Android,我尝试了下面的代码,它返回空值 任何人都可以帮助我在以下代码中的错误位置和原因: TelephonyManager tManager=(TelephonyManager)getSystemService(TELEPHONY_SERVICE); phoneNumber=tManager.getLine1Number(); 此外,我在Android清单文件中包含了权限: <uses-permission android:name="android.permission.READ_PHONE_

我尝试了下面的代码,它返回空值

任何人都可以帮助我在以下代码中的错误位置和原因:

TelephonyManager tManager=(TelephonyManager)getSystemService(TELEPHONY_SERVICE);
phoneNumber=tManager.getLine1Number();
此外,我在
Android清单
文件中包含了权限:

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


您使用的方法是SDK中唯一一个可以执行此操作的部分,并且仅适用于SIM卡上存储号码的设备,只有一些运营商可以这样做。对于所有其他运营商,您必须要求用户手动输入电话号码,因为该号码根本不存储在设备上任何您可以从中检索的位置。

请看示例。你有没有给我读电话的权限@SandunHarshana是的,我有权限。没有办法得到电话号码?你确定你真的得到许可了吗?如果没有,则应该抛出一个
SecurityException
,因此如果在
try catch
中有该异常,请确保没有忽略任何异常。