如何从Android手机获取电话号码。我使用过这段代码,但它没有得到当前的数字。它得到了手机附带的号码,所以如果我更换SIM卡,它就会得到之前的号码。
TelephonyManager manager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String number = manager.getLine1Number();
此代码获取数字但不是当前数字。我如何得到当前的数字。
答案 0 :(得分:0)
尝试使用此
TelephonyManager telemamanger = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String getSimSerialNumber = telemamanger.getSimSerialNumber();
并使用:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
答案 1 :(得分:0)
Sim序列号和SIM号是唯一的。您可以尝试使用此方法获取SIM序列号并获取SIM卡号码,不要忘记在清单文件中添加权限。
TelephonyManager telemamanger = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String getSimSerialNumber = telemamanger.getSimSerialNumber();
String getSimNumber = telemamanger.getLine1Number();
并将以下权限添加到Androidmanifest.xml文件中。
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
注意:只有单卡手机才有可能,如果您尝试使用双卡手机,则无法获取手机号码。