一.UDID(Unique Device Identifier)
UDID是Unique Device Identifier的縮寫,中文意思是設備唯一標識.
iOS5 sdk中的獲取方法:[UIDevice currentDevice] uniqueIdentifier]
uniqueIdentifier在UIDevice.h中的定義如下:@property(nonatomic,readonly,retain) NSString? ? *uniqueIdentifier? __OSX_AVAILABLE_BUT_DEPRECATED(__MAC意思是iOS2.0以上及iOS5.0以下的系統(tǒng)可用,但不建議使用.Apple有可能在iOS5.0之后刪除該函數(shù).
iOS6之后 換成[[UIDevice currentDevice] identifierForVendor];
但是我們需要注意的一點是,對于已越獄了的設備,UDID并不是唯一的.使用Cydia插件UDIDFaker,可以為每一個應用分配不同的UDID.
所以UDID作為標識唯一設備的用途已經(jīng)不大了
UDID(Unique DeviceIdentifier)是一串由40位16進制數(shù)組成的字符串同欠,用以標識唯一的設備柿冲,現(xiàn)在想通過代碼獲取是不可能的了按价,如果你想看看你設備的UDID颂郎,可以通過iTunes來查看。蘋果從iOS5開始就移除了通過代碼訪問UDID的權限试读,所以碼農(nóng)啊警儒,想知道用戶設備的UDID,是不行的嘍袄简。
那么有沒有另外的辦法來獲取用戶設備的唯一標識符呢腥放?答案是有的,當然這樣的標識符不是蘋果隱藏的UDID了绿语,使用OpenUDID開源代碼秃症,這個代碼通過一些特殊的算法候址,創(chuàng)建了每一個設備的唯一標識符,你可以拿過來用來識別設備了种柑。
二.UUID(Universally UniqueIDentifier)
是基于iOS設備上面某個單個的應用程序岗仑,只要用戶沒有完全刪除應用程序,則這個UUID在用戶使用該應用程序的時候一直保持不變聚请。如果用戶刪除了這個應用程序荠雕,然后再重新安裝,那么這個UUID已經(jīng)發(fā)生了改變驶赏。通過調(diào)用[[UIDevice currentDevice]identifierForVendor];方法可以獲取UUID炸卑。UUID不好的地方就是用戶刪除了你開發(fā)的程序以后,基本上你就不可能獲取之前的數(shù)據(jù)了煤傍。