作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个 Android 项目,在我的代码中的某个时刻,我需要获取设备序列号。
为了得到它,我曾经使用 Build.SERIAL
自 Android O 以来已被弃用。为了避免出现问题,我开始使用 Build.getSerial()
,并创建了一个包含操作系统版本检查的小方法:
private static String getSerial() throws SecurityException {
if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.O) {
return Build.SERIAL;
}
return Build.getSerial();
}
READ_PHONE_STATE
(
getSerial()
方法要求)被授予,因为我一开始就这样做并确保我已经拥有它
之前 得到这个方法。
Build.SERIAL
上的警告
private static String getSerial() throws SecurityException {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
return Build.getSerial();
}
return Build.SERIAL;
}
private static String getDeviceUDI() throws SecurityException {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
return Build.getSerial();
} else {
return Build.SERIAL;
}
}
private static String getDeviceUDI() throws SecurityException {
if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.O) {
return Build.SERIAL;
} else {
return Build.getSerial();
}
}
最佳答案
你需要这样的东西:
@SuppressLint("HardwareIds")
@SuppressWarnings("deprecation")
private static String getSerial() throws SecurityException {
if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.O) {
return Build.SERIAL;
}
return Build.getSerial();
}
关于android - 即使检查正确,我也会不断收到弃用的 API 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50675122/
我是一名优秀的程序员,十分优秀!