我正在使用以下 android 代码来获取手机号码,它仅适用于 android 模拟器:
TelephonyManager tm =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String number = tm.getLine1Number();
但是当我在真实设备(Samsung Galaxy Chat B5330
)中测试它时,它什么也没给出(空字符串)
请帮助一些代码片段。
我正在使用以下 android 代码来获取手机号码,它仅适用于 android 模拟器:
TelephonyManager tm =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String number = tm.getLine1Number();
但是当我在真实设备(Samsung Galaxy Chat B5330
)中测试它时,它什么也没给出(空字符串)
请帮助一些代码片段。
对于 GSM,电话号码在 SIM 卡上,有些运营商只是不把它放在卡上,然后手机不知道它是什么,但在这种情况下你应该得到一个空字符串而不是 null
如果运营商将号码存储在您的 SIM 卡上,请转至Settings -> About Phone -> Status -> My phone Number
。如果它显示unknown
在那里,则您的号码未存储在 SIM 卡上。
获取IMEI使用:
TelephonyManager tm =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
imei_no = tm.getDeviceId();
您必须使用电话管理器;如果您根本没有找到联系电话。用户的;您可以使用相同的电话管理器类获取 SIM 卡的 SIM 序列号和 Android 设备的 Imei 号...
添加权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
进口:
import android.telephony.TelephonyManager;
使用以下代码:
TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
// get IMEI
imei = tm.getDeviceId();
// get SimSerialNumber
simSerialNumber = tm.getSimSerialNumber();