Android 唯一裝置號生成方案

2021-07-30 11:14:05 字數 854 閱讀 3600

以下是一種比較靠譜的解決方案。通過獲取到 imei、androidid、macaddress 進行拼接,再將拼接結果進行 md5 轉換,那麼就可以得到一串 32 個字元的 16 進製資料,這時候也能夠保證得到的裝置唯一標識為統一的長度。這樣也能夠很大程度上保證你最終得到的唯一標識不為空,因為這三個值同時為空幾乎不大可能。

public static string generateuniquedeviceid()

contentresolver contentresolver = context.getcontentresolver();

if (contentresolver !=

null)

wifimanager wifimanager = (wifimanager) context.getsystemservice(context.wifi_service);

if (wifimanager !=

null)

stringbuilder longidbuilder =

new stringbuilder();

if (imei !=

null)

if (androidid !=

null)

if (macaddress !=

null)

return md5utils.tomd5(longidbuilder.tostring());

}

獲取 imei 需要加入許可權 android.permission.read_phone_state

獲取 macaddress 需要加入許可權 android.permission.access_wifi_state

利用SAMKeyChain生成唯一裝置號

由於傳統已知的三種方法獲取uuid都不能保證它唯一不變,那麼我們可以利用鑰匙串服務,來生成並儲存乙個唯一不變的字元,作為唯一的裝置id.利用cfuuidcreatestring函式生產uuid,解除安裝應用重新安裝後會不一致 nsstring getuuid 解除安裝應用重新安裝後會不一致 nsst...

android 裝置唯一標識 Android ID

android id是裝置第一次啟動時產生和儲存的64bit的乙個數,當裝置被wipe 刷機,恢復出廠設定 後該數重置。string secureid settings.secure.getstring getcontentresolver settings.secure.android id 這裡...

唯一ID的生成方法

生成唯一id的幾種方案 1 uuid 2 mysql的自增主鍵 3 mysql多例項自增主鍵 4 雪花id snowflake演算法 配合專案啟動命令效果更佳 5 redis生成方案 1.uuid生成方案 優點 實現簡單,本機生成,沒有什麼效能問題,況且是全球唯一的id,所以遷移資料的時候比較容易 ...