//获取手机唯一标识
private String getId() {
StringBuilder deviceId = new StringBuilder();
// 渠道标志
deviceId.append("a");
try {
//IMEI(imei)
TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
@SuppressLint("MissingPermission") String imei = tm.getDeviceId();
if(!TextUtils.isEmpty(imei)){
deviceId.append("imei");
deviceId.append(imei);
return deviceId.toString();
}
//序列号(sn)
@SuppressLint("MissingPermission") String sn = tm.getSimSerialNumber();
if(!TextUtils.isEmpty(sn)){
deviceId.append("sn");
deviceId.append(sn);
return deviceId.toString();
}
//如果上面都没有, 则生成一个id:随机码
String uuid = getUUID();
if(!TextUtils.isEmpty(uuid)){
deviceId.append("id");
deviceId.append(uuid);
return deviceId.toString();
}
} catch (Exception e) {
e.printStackTrace();
deviceId.append("id").append(getUUID());
}
return deviceId.toString();
}
/**
* 得到全局唯一UUID
*/
private String uuid;
public String getUUID(){
SharedPreferences mShare = getSharedPreferences("uuid",MODE_PRIVATE);
if(mShare != null){
uuid = mShare.getString("uuid", "");
}
if(TextUtils.isEmpty(uuid)){
uuid = UUID.randomUUID().toString();
mShare.edit().putString("uuid",uuid).commit();
}
return uuid;
}
最后
以上就是俊逸板栗最近收集整理的关于Android获取手机唯一标识的全部内容,更多相关Android获取手机唯一标识内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复