獲取裝置唯一碼

2022-02-14 18:25:13 字數 978 閱讀 6509

有些企業內部程式需要對訪問程式的真機做白名單限制,對於裝置唯一碼,蘋果做出了如下限制:


1.從ios7之後,獲取mac位址會返回固定值「02:00:00:00:00:00」。


2.試圖獲取udid(裝置唯一碼)的程式不會通過蘋果的審核。

我們可以在程式第一次啟動時生成這個id並儲存起來,但是,如果使用者刪除該應用再次安裝時,又會生成新的字串,所以不能保證唯一識別該裝置,所以這個id不能存在沙盒裡,應該存在keychain裡。

核心**:

首先是生成uuid的**,建議封裝成靜態類:

1     cfuuidref puuid =cfuuidcreate(nil);

2 cfstringref uuidstring =cfuuidcreatestring(nil, puuid);

3 nsstring *result = (nsstring *)cfstringcreatecopy(null, uuidstring);

4cfrelease(puuid);

5cfrelease(uuidstring);

6 nslog(@"

%@" ,result);

對keychain的操作:

匯入類庫後匯入security.framework,**如下:1//

為應用程式定義keychain訪問的包裝器

account number

" accessgroup:@""];

34//寫入資料(這裡的key一定要用系統提供的列舉)

《帳號》

" forkey:(id

)ksecattraccount];

《帳號密碼》

" forkey:(id

)ksecvaluedata];78

//取出資料

)ksecvaluedata];

1011

//清理資料

注意這些**都是mrc下的。

android獲取裝置唯一碼

android獲取裝置唯一碼,最唯一的應該是imei號,全網唯一,但是有時候不一定可以獲取到,這時候可以通過獲取其他id來代替,獲取cpu串碼,裝置序列號 androidid,pesudouniqueid mac位址,藍芽mac位址,這幾個id裡面獲取只要獲取到乙個位址就可以使用,如果最後實在是上面...

生成唯一碼

根據年月日 隨機數獲取19位的資料序列 public static long getrandomid 根據年月日 隨機數獲取19位的資料序列 public static long gethashcodeid var num 19 s.length var f datetime.now.tostrin...

C 獲取多個物理唯一碼案例

本地ip getip cpu編碼 getcpuid getmacaddress 本地ip getipaddress 磁碟型號 getdiskid 系統使用者名稱 getusername 系統型別 cmd命令 systeminfo 方法如下 string getcpuid moc null mc nu...