如何在android设备中获取GSM电话号码

如何在android设备中获取GSM电话号码,android,android-emulator,Android,Android Emulator,我想用这样的代码显示android设备上自己的电话号码 TelephonyManager tMgr =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); mPhoneNumber = tMgr.getLine1Number(); 当我使用CDMA时,它工作并显示电话号码,但如果我使用GSM,它的号码不会显示, 如果我检查手机状态设置,当我使用GSM时,我的手机号码显示为“未知” 你能给我一个解

我想用这样的代码显示android设备上自己的电话号码

TelephonyManager tMgr =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);    
         mPhoneNumber = tMgr.getLine1Number(); 
当我使用CDMA时,它工作并显示电话号码,但如果我使用GSM,它的号码不会显示, 如果我检查手机状态设置,当我使用GSM时,我的手机号码显示为“未知”


你能给我一个解决方案,显示手机号码从android设备的GSM??请注意,谢谢:)

此问题没有保证的解决方案,因为电话号码不是物理存储在所有SIM卡上,也不是从网络广播到手机。这在一些需要物理地址验证的国家尤其如此,数字分配只能在之后进行。电话号码分配在网络上进行,并且可以在不更改SIM卡或设备的情况下进行更改(例如,这就是支持移植的方式)。我知道这很痛苦,但最有可能的解决办法是让用户输入他/她的电话号码一次并存储