1.许多应用都有这样的需求获取你的手机唯一标识,当你卸载软件重新安装的时候也要保证这个唯一标识不变,所以只能根据手机硬件的去获取到唯一标识,
2.有好多跟硬件相关都会有各种权限问题。一种很简单直接获取到READ_PHONE_STATE的权限,读取到设备串号.
3.如果是Android6.0系统需要去申请权限,否则会奔溃,这是6.0的新特性。虽然没有什么暖用。
(1)这种方式不加密,直接获取串号
if (EasyPermissions.hasPermissions(context, Manifest.permission.READ_PHONE_STATE)) {
// 已经有摄像头权限了,可以使用该权限完成app的相应的操作了
Log.e(“执行请求”, “获取true”);
TelephonyManager telephonyManager = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
deviceId = telephonyManager.getDeviceId();// imei
if (deviceId == null) {
deviceId = telephonyManager.getSubscriberId();// imsi
}
if (deviceId == null) {
deviceId = telephonyManager.getSimSerialNumber();
}
if (deviceId == null) {
deviceId = “noimei” + telephonyManager.getNetworkOperatorName();
}