https://zhuanlan.zhihu.com/p/24161646網絡
IDFA全稱是identifier for advertisers,在瞭解IDFA以前,咱們須要瞭解另外一個概念,叫UDID。UDID是蘋果設備設備的惟一設備識別符,早期的時候移動廣告商每每須要經過UDID用來識別用戶,並對用戶活動進行跟蹤,從而投放廣告ide
在iOS應用早期,UDID被第三方應用開發者和網絡廣告商用來收集用戶數據,能夠用來關聯地址、記錄應用使用習慣……以便推送精準廣告。很多用戶也對此表示蘋果侵犯消費者隱私,蘋果爲了保護用戶隱私,早在2012年就再也不容許其生態中的APP獲取用戶的惟一標識符,可是廣告主但願在移動端打廣告的時候又但願能監控到每一次廣告投放的效果,所以,蘋果想出了折中的辦法,就是提供另一套和硬件無關的標識符,用於給商家監測廣告效果,同時用戶能夠在設置裏改變這串字符,致使商家沒有辦法長期跟蹤用戶行爲。這個就叫作廣告標識符(IDFA),設置路徑是「設置->隱私->廣告->還原廣告標識符」,這個IDFA是能夠關閉和修改的,據某知名檢測機構調研,在國內關閉這個功能的不足1%,一旦關閉,廣告還能投放,可是沒辦法按照興趣等屬性去投放了ui
iOS設備ID有不少,一般用到的大概有如下六個,例如UDID、IMEI、ICCID、MEID、IDFA、MAC地址等,一臺蘋果手機的標識方式不少,不一樣標識方式又有不一樣的參數信息。spa
隨着iOS系統的升級,不少設備ID蘋果禁止開發者獲取,或者給用戶諸多人性選擇空間。下面詳細說說參數的定位及用途,其中最爲你們關注的就是IDFA。遊戲
1.UDIDip
UDID(UniqueDevice Identifier)是蘋果iOS設備的惟一識別碼,由40個字符的字母和數字組成。移動廣告商、遊戲網絡運營商或CP每每須要經過UDID用來識別玩家、用戶,並對用戶活動進行跟蹤;也常常會用於一臺設備一個帳號功能實現。開發
iOS 6及之前系統是能夠獲取到設備的UDID,iOS 7中已經徹底的禁用。產品
2.IMEIit
IMEI(International Mobile Equipment Identity)是國際移動裝備辨識碼,是由15位數字組成的"電子串號",它與每臺移動電設備一一對應,並且該碼是全世界惟一的。每一隻移動電話機在組裝完成後都將被賦予一個全球惟一的一組號碼,這個號碼從生產到交付使用都將被製造生產的廠商所記錄。io
iOS 6及之後系統就不能正規獲取IMEI,但能夠經過私有API獲取手機的IMEI號,通常蘋果發現有經過私有API獲取設備ID,上架時會予以拒絕。若是在線產品被發現會立馬下架,2015年有米SDK下架風波就是由於經過私有API獲取設備ID,觸動了蘋果的底線,致使一晚上之間近300款應用被下架,其中不乏大產品。
3.MEID
MEID(Mobile Equipment Identifier)移動設備識別碼,是CDMA手機的身份識別碼,也是每臺手機惟一的識別碼。經過這個識別碼,網絡端能夠對該手機進行跟蹤和監管,適用於CDMA制式的手機。MEID的數字範圍是十六進制,和IMEI的格式相似。
4.IDFA
IDFA(Identifier for Advertising)稱爲廣告標示符,是蘋果在iOS系統中給予App開發者用以標識iOS設備的一種身份參數。對廣告主而言,IDFA最大的做用就是準確認識這個設備表明的用戶,確認廣告是否有效觸達,避免將同一個廣告重複投放形成預算浪費,同時進行真實性監測。而對整個廣告行業來講,IDFA是造成數據鏈條的必須手段,廣告網絡、DSP和DMP都須要一個統一的設備數據身份覈對標準。
不得不要說的一點,在iOS 10中,蘋果將限制廣告追蹤的功能實質化。用戶若是開啓了限制廣告跟蹤功能(Limit Ad Tracking,簡稱LAT),App獲取到的IDFA將是一串16位的0數值,這一舉措意味着廣告主將失去識別用戶的能力。而在以前的版本中,若是用戶打開了LAT,當App去獲取時IDFA時,會被系統告知該用戶開啓了這個限制,但其實App依舊能夠繼續獲取到真實的IDFA。
值得慶幸的是iOS 10的迭代率有近68%,但開啓LAT的目前體量爲15%左右,通常IDFA是專門給「廣告用的」,而iPhone手機只要在出廠的時候沒有關閉「廣告追蹤」,不多有用戶會主動去設置關閉。