2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 安卓获取不到imsi_android 代码获取IMEI IMSI都为空 怎么解决?

安卓获取不到imsi_android 代码获取IMEI IMSI都为空 怎么解决?

时间:2023-12-12 18:36:06

相关推荐

安卓获取不到imsi_android 代码获取IMEI IMSI都为空 怎么解决?

展开全部

Android获取IMSI和IMEI :

IMSI是一个唯一的数字,标识了GSM和UMTS 网络里的唯32313133353236313431303231363533e59b9ee7ad9431333365646263一一个用户.

它存储 在手机的SIM卡里,它会通过手机发送到网络上。

IMEI也是一串唯一的数字,标识了GSM 和UMTS网络里的三星 Galaxy I9100.。

它通常被打印在手机里电池下面的那一面,拨 *#06# 也能看到它。

代码:

这里是你在Android里读出 唯一的 IMSI-ID/IMEI-ID 的方法。

Java:

StringmyIMSI=

android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMSI

);

//withinmyemulatoritreturns:310995000000000

StringmyIMEI=

android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMEI

);

//withinmyemulatoritreturns:000000000000000

手机号码不是所有的都能获取。只是有一部分可以拿到。这个是由于移动运营商没有把手

机号码的数据写入到sim卡中。sim卡只有唯一的编号,供网络与设备识别那就是imsi号码,手机的信号也可以说是通过这个号码在网络中传递的,并不是手机号码。

试想,你的sim丢失后,补办一张新的会换号码吗? —不会就是因为在你的手机号码对应的 imsi号在移动运营商中被修改成新sim卡的imsi号码。

这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值。不赋值自然为空。

/** * 获得手机的一些标志符* *@paramc *@returnString 手机的类型 */

publicStringfetch_status(Contextc){

TelephonyManagertm=(TelephonyManager)c

.getSystemService(Context.TELEPHONY_SERVICE);//

Stringstr="";

StringIMSI=tm.getSubscriberId();

str+="DeviceId(IMEI)="+tm.getDeviceId()+"/n";

str+="DeviceSoftwareVersion="+tm.getDeviceSoftwareVersion()

+"/n";

str+="Line1Number="+tm.getLine1Number()+"/n";

return str;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。