从android手机获取电话号码
我应该使用哪些命令才能从Android手机获取sim卡电话号码?从android手机获取电话号码,android,firemonkey,delphi-xe5,Android,Firemonkey,Delphi Xe5,我应该使用哪些命令才能从Android手机获取sim卡电话号码? 通过查看电话拨号器示例,我发现“PhoneDialerService.GetCarrier”,但没有获取手机号码的选项。如果设备仅使用一张sim卡,请使用: TelephonyManager phoneManager = (TelephonyManager)getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE); String phoneNum
通过查看电话拨号器示例,我发现“PhoneDialerService.GetCarrier”,但没有获取手机号码的选项。如果设备仅使用一张sim卡,请使用:
TelephonyManager phoneManager = (TelephonyManager)getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE);
String phoneNumber = phoneManager.getLine1Number();
如果设备使用两张或更多sim卡,请使用:
TelephonyManager phoneManager = (TelephonyManager)getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE);
String simSerialNumber = phoneManager.getSimSerialNumber();
不要忘记许可:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
请注意,没有任何保证的解决方案。这在每个设备/国家/地区都不起作用(可能返回null),因为并非所有SIM卡上都实际存储了电话号码。最好的解决方案是让用户输入他/她的电话号码一次并存储,然后询问号码是否已移植/更改 备选方案如何获取手机序列号或IMEI号码?提前谢谢。此外,我应该将上述权限放在代码中的什么位置?只需调用“phoneManager.getDeviceId()”检索IMEI号码。将权限放在xml清单而不是java代码中您还知道如何获取IMSI编号吗?再次谢谢你,它没用。它不接受电话管理器变量&getapplicationcontext。我从Remy Lebeau()那里找到了解决方案。无论如何,谢谢你。