Android获取手机IMEI号和IMSI号

下面是主要内容:

  •  IMEI 和 IMSI 是什么
  • 如何获取 IMEI 和 IMSI
  • 代码示例

1. 先看下 IMEI 和 IMSI 是什么

IMEI(International Mobile Equipment Identity):相当于手机的身份证号码;是由15位数字组成的”电子串号”,其组成结构为TAC(6位数字)+FAC(两位数字)+SNR(6位数字)+SP (1位数字),每一个手机组装完毕后都会被赋予一组号码,这便是 IMEI 。

IMSI(International Mobile Subscriber Identification Number):区别移动用户的标志,存储在 SIM 卡中,用于区别移动用户的有效信息。

2. 如何获取 IMEI 和 IMSI

首先添加权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    //获取手机IMEI号
    public String getIMEI() {
        TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
        @SuppressLint("MissingPermission") String imei = telephonyManager.getDeviceId();
        return imei;
    }
    //获取手机IMSI号
    public String getIMSI(){
        TelephonyManager mTelephonyMgr = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
        @SuppressLint("MissingPermission") String imsi = mTelephonyMgr.getSubscriberId();
        return imsi ;
    }

3. 代码示例

下面是获取我手机中的 IMEI 和 IMSI 的代码:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        Log.e("==手机IMEI号", getIMEI());
        Log.e("==手机IMSI号", getIMSI());
    }

下面是打印结果:

猜你喜欢

转载自blog.csdn.net/wuqingsen1/article/details/84304474