android手機獲取唯一標識的方法
更新時間:2017年06月02日 10:42:52 作者:如果不曾經(jīng)歷
這篇文章主要
為大家詳細介紹了android手機獲取唯一標識的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
獲取手機唯一標識
拼接的方式獲取手機唯一標識
第一種方式是獲取IMEI,但是有的手機如果不是正品的話,就獲取不到所以通過這一種方式還是會出現(xiàn)有的設備是沒有唯一標識的
第二種方式獲取手機卡的序列號,當然這種也不是唯一的,因為有的手機是雙卡雙待的所以可能會出現(xiàn)空的情況
第三種方式是萬能的也就是UUID,隨機生成一個標識,但是必須保存在本地,防止下一次進入的時候再次生成隨機碼
進行三層判斷,來獲取手機的唯一標識。
//獲取手機的唯一標識 public String getPhoneSign(){ StringBuilder deviceId = new StringBuilder(); // 渠道標志 deviceId.append("a"); try { //IMEI(imei) TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE); String imei = tm.getDeviceId(); if(!TextUtils.isEmpty(imei)){ deviceId.append("imei"); deviceId.append(imei); return deviceId.toString(); } //序列號(sn) 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; }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Android金額輸入框只允許輸入小數(shù)點后兩位效果
實現(xiàn)android 金額輸入框輸入小數(shù)點后兩位的效果也不是很復雜,只需要設置輸入框輸入的字符類型、設置InputFilter、設置輸入變化監(jiān)聽即可。這篇文章主要介紹了Android金額輸入框只允許輸入小數(shù)點后兩位 ,需要的朋友可以參考下2017-05-05Android startActivityForResult的基本用法詳解
這篇文章主要介紹了Android startActivityForResult的基本用法詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08Android錄音--AudioRecord、MediaRecorder的使用
本篇文章主要介紹了Android錄音--AudioRecord、MediaRecorder的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02