UDID(Unique Device Identifier)用戶設(shè)備唯一編碼
UDID 是一串由40位16進制數(shù)組成的字符串埠褪,用以標(biāo)識唯一的設(shè)備浓利。蘋果從 iOS 5 開始就移除了通過代碼訪問 UDID 的權(quán)限,所以我們無法從代碼中獲取用戶設(shè)備的 UDID组橄。如果我們想查看自己設(shè)備的 UDID荞膘,可以通過 iTunes 來查看。通常開發(fā)者需要知道你的 UDID玉工,才可以讓你的手機安裝訪問測試中的應(yīng)用羽资,在增加 Provisioning Profile 文件時會用到。
如果用戶不方便通過 iTunes 來查看遵班,可通過 Safari 瀏覽器打開,獲取UDID:
UUID(Universally Unique Identifier)通用唯一識別符
UUID 是一個32位的十六進制序列馒胆,使用小橫線來連接:8-4-4-4-12 烤咧。它是一種應(yīng)用加設(shè)備綁定產(chǎn)生的標(biāo)識符。當(dāng)在設(shè)備上安裝來自同一個供應(yīng)商的不同App時汇在,此值保持不變。如果你刪除了來自某個供應(yīng)商的所有app脏答,再重新安裝時糕殉,此值會改變。
獲取UUID的方法:
NSString *uuidString = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
let uuidString = UIDevice.current.identifierForVendor?.uuidString
IMEI
IMEI(International Mobile Equipment Identity):國際移動設(shè)備身份碼殖告,在手機組裝完成后賦予的一個全球唯一的號碼阿蝶,由于此時 iPhone 只支持單卡,所以 IMEI 和 iPhone 是一一對應(yīng)的黄绩。
iOS 2 提供了一種方法獲取 IMEI羡洁,但是為了保護用戶隱私,iOS 5 以后蘋果不再允許獲取 IMEI 了爽丹,如果你在應(yīng)用中獲取 IMEI筑煮,可能會遭到 Apple Store 的拒絕。
IDFA
IDFA(Identifier for Identifier)粤蝎,即廣告標(biāo)識符真仲,多用于用戶的廣告追蹤,是每臺設(shè)備的唯一 ID诽里,IDFA 存儲在用戶的系統(tǒng)上袒餐。Apple 是不允許開發(fā)者追蹤用戶設(shè)備的,但是為了監(jiān)控廣告效果谤狡,在 iOS 6 中提供這個折中方案灸眼,但 IDFA 也會發(fā)生變化,比如重置系統(tǒng)墓懂、還原廣告標(biāo)識符等焰宣。同時,用戶也可以選擇是否禁止廣告追蹤(即商家沒辦法根據(jù)用戶的行為偏好推送廣告)捕仔。
Mac 地址
Mac(Medium/Media Access Control):網(wǎng)絡(luò)設(shè)備的物理地址匕积,如果 IMEI 被認(rèn)為是設(shè)備的唯一標(biāo)識,那么 Mac 就是網(wǎng)絡(luò)接口唯一標(biāo)識榜跌。學(xué)過計算機網(wǎng)絡(luò)都知道闪唆,在根據(jù) IP 進行物理尋址的時候就是使用的 Mac 地址。
同樣由于隱私問題钓葫,在 iOS 7 之后無法通過 Mac 地址來標(biāo)識唯一設(shè)備悄蕾,因為在 iOS 7 之后獲取到的 Mac 地址為一固定值。