【问题标题】:java.lang.SecurityException android.telephony.TelephonyManager.getDeviceIdjava.lang.SecurityException android.telephony.TelephonyManager.getDeviceId
【发布时间】:2019-09-20 05:58:59
【问题描述】:

以下是我的代码从 Android 版本 7 及更高版本开始出现安全异常。我在清单文件中添加了android.permission.READ_PHONE_STATE 权限,还添加了运行时权限。

TelephonyManager tManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);

String imeiNum= tManager.getDeviceId();

【问题讨论】:

标签: android


【解决方案1】:

您的目标是 api 级别 29。从 29 开始,它是 throws a SecurityExceptiongetDeviceId() 自 API 26 起已弃用,您应该尝试 getImei() ;

【讨论】:

    【解决方案2】:

    如果你想获取imei,可以试试

    TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        String imei = tm.getImei();
    } else {
        String imei = tm.getDeviceId();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-26
      • 2016-10-17
      • 1970-01-01
      • 1970-01-01
      • 2018-02-27
      • 2019-03-18
      • 2016-05-22
      相关资源
      最近更新 更多