简体   繁体   English

如何获取设备的IMEI?

[英]How get IMEI of device?

I a beginner in android development and I try to get device IMEI but I have a problem of permission.我是 android 开发的初学者,我尝试获取设备IMEI ,但我有权限问题。

I don't have android.permission.READ_PRIVILEGED_PHONE_STATE property in my project but the function getImei() of TelephonyManger.java require this permission.我的项目中没有android.permission.READ_PRIVILEGED_PHONE_STATE属性,但TelephonyManger.java的函数getImei()需要此权限。

How can I resolve this?我该如何解决这个问题? I am a little lost.我有点失落。

try use below code in kotlin.尝试在 kotlin 中使用以下代码。

val telephonyManager = getSystemService(Context.TELEPHONY_SERVICE) as
     TelephonyManager
     if (ActivityCompat.checkSelfPermission(this@MainActivity,
     Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) {
        ActivityCompat.requestPermissions(this@MainActivity,
        arrayOf(Manifest.permission.READ_PHONE_STATE), REQUEST_CODE)
        return@setOnClickListener
     }  
     IMEINumber = telephonyManager.deviceId
     

this link would be helpful.这个链接会很有帮助。 How to get the device's IMEI/ESN programmatically in android? 如何在android中以编程方式获取设备的IMEI/ESN?

The answer is sad.答案是悲伤的。 We can't !我们不能

Like @Nitsh said, "The READ_PRIVILEGED_PHONE_STATE permission is only granted to apps signed with the platform key and privileged system apps" .就像@Nitsh 所说, READ_PRIVILEGED_PHONE_STATE权限仅授予使用平台密钥和特权系统应用程序签名的应用程序”

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM