一般的UUID是很长的字符串编码,不好记,因此需要一个纯数字的UUID,效果如下图:
/**
* 得到全局唯一UUID
*/
private static String uuid;
public static String getNumberUUID(Context context){
SharedPreferences mShare = context.getSharedPreferences("uuid",Context.MODE_PRIVATE);
if(mShare != null){
uuid = mShare.getString("uuid", "");
}
//随机生成一个UUID,然后保存到Preferences里
if(TextUtils.isEmpty(uuid)){
Integer userId = UUID.randomUUID().toString().hashCode();
// String.hashCode()可能会是负数,如果为负数需要转换为正数
userId = userId < 0 ? -userId : userId;
uuid =String.valueOf(userId);
mShare.edit().putString("uuid",uuid).commit();
}
return uuid;
}
?
|