1:获取CPU的编码值–这个肯定是绝对唯一的
2:如果取不到CPU的编码就取以太网的MAC地址,不要取WIFI的地址
3:如果取不到MAC地址的话,就取设备的序列号,序列号还是取不到 的话,那就只能去硬件编码了,
1 先从Shared里面取,效率比较高,以后每次娶到了直接保存在Shared里面,然后依次取CPU MAC 序列号,设备号
/***
* 获取设备的唯一编码
* 0:先取保存的,取到一次成功后,保存在本地,以后直接调用
* 1:先去取序列号,如果能娶到序列号就用序列号
* 2:取不到序列号,就用设备硬件生成的UUID
* @return
*/
public static String getUniquePsuedoID() {
String onlyCode = SharedPerManager.getUniquePsuedoID();
if (onlyCode != null && onlyCode.length() > 2) {
return onlyCode;
}
String cpuId = SystemManagerUtil.getCpuInfo();
if (cpuId != null && cpuId.length() > 2) {
SharedPerManager.setUniquePsuedoID(cpuId);
return cpuId;
}
String codeBack = getEthMAC();
if (codeBack.length() > 2 && codeBack != null) {
codeBack = codeBack.replace(":",