如何在TextView中显示当前设备的IMEI?

时间:2018-12-08 15:18:24

标签: android

我尝试使用此代码在textView中显示设备的IMEI,但它不起作用。当我运行程序时什么也没出现。

 button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                    getDeviceIMEI();
            }
        });     

private void getDeviceIMEI() {
      TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
      String IMEI_Number_Holder = telephonyManager.getDeviceId();
      textView.setText(IMEI_Number_Holder);
    }

我还在AndroidManifest.xml中添加了此权限:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

1 个答案:

答案 0 :(得分:0)

尝试此代码。

/**
 * Return the IMEI.
 * Must hold {@code <uses-permission android:name="android.permission.READ_PHONE_STATE" />}
 * @return the IMEI
 */
@SuppressLint("HardwareIds")
@RequiresPermission(READ_PHONE_STATE)
public static String getIMEI() {
    TelephonyManager tm = (TelephonyManager) Toolkit.getApp().getSystemService(Context.TELEPHONY_SERVICE);
    if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) return tm.getImei();
    return tm.getDeviceId();
}