Android 获取设备唯一号 unknown

问题:使用 Build.SERIAL 获取设备唯一号时有些机型会返回 'unknown'。

原因:在Android O以后 android.os.Build.SERIAL已经被弃用。

解决方法:需要使用新的方法  Build.getSerial() 。并且需要READ_PHONE_STATE权限。

       if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {            Declare.DeviceID = Build.SERIAL;        } else {            if (ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) {                               // TODO: Consider calling                //    ActivityCompat#requestPermissions                // here to request the missing permissions, and then overriding                //   public void onRequestPermissionsResult(int requestCode, String[] permissions,                //                                          int[] grantResults)                // to handle the case where the user grants the permission. See the documentation                // for ActivityCompat#requestPermissions for more details.                return;            }            Declare.DeviceID = Build.getSerial();        }

以上

更多相关文章

  1. Android设备和PC设备有线USB连接双向通信预研报告
  2. Android 发布可穿戴设备 SDK 的开发者预览版
  3. Android干坏事——禁止设备休眠
  4. 获取Android设备的方向
  5. android的设备永不休眠(增加 Settings-->Dispaly-->-->screenout-
  6. 简单的通过request判断客户端设备类型
  7. android 获取手机设备信息
  8. Android 获取设备各种信息
  9. Android 监听耳机外放设备

随机推荐

  1. 原生APP中js怎样与Android和ios进行交互
  2. android Bitmap
  3. eclipse导入android的app
  4. 获取Android设备唯一标识(唯一序列号)
  5. android studio 在windows 7环境下安装
  6. SharedPreferences之Android数据保存
  7. Android(安卓)2.1 源码结构分析 转载
  8. android 出错信息为:Class 'Anonymous cla
  9. Android(安卓)对话框【Dialog】去除白色
  10. Android(安卓)Q fastboot刷GSI(MTK)