什么是 IDFV
IDFV 是一個(gè)由字母數(shù)字構(gòu)成的字符串,用于唯一標(biāo)識(shí)程序供應(yīng)商的設(shè)備。
如何獲取 IDFV
NSString *vendor = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
//輸出結(jié)果:94B854B0-AC0B-4F7F-8F0D-E32824317E83
IDFV 的變與不變
- 同一臺(tái)設(shè)備上,來(lái)自同一個(gè)供應(yīng)商的 App,IDFV 相同。
- 同一臺(tái)設(shè)備上,來(lái)自不同廠商的 App,IDFV 不同。
- 不同設(shè)備的 IDFV 不同,與供應(yīng)商無(wú)關(guān)。換言之,即使同一個(gè)廠商的 App,在不同設(shè)備上 IDFV 也不相同。
- 當(dāng) iOS 設(shè)備上存在同一廠商的其他應(yīng)用時(shí),刪除 App 重裝,IDFV 保持不變。
- 刪除 iOS 設(shè)備上同一廠商全部 App,重新安裝 App,IDFV 會(huì)發(fā)生改變。
- 使用 Xcode 安裝測(cè)試版本或 ad-hoc 包時(shí),IDFV 會(huì)發(fā)生改變。
IDFV 生成規(guī)則
- 通常 IDFV 由 AppStore 提供的數(shù)據(jù)決定。如果是企業(yè)包或開發(fā)包,IDFV 根據(jù) App bundle ID 計(jì)算。
- iOS 7 之后,Bundle ID 除去最后部分,其他剩余部分用于計(jì)算生成 IDFV。如果 Bundle ID 只有一部分組成,則全部用來(lái)參與計(jì)算。
IDFV 與 IDFA
- 當(dāng)實(shí)現(xiàn)廣告投放系統(tǒng)時(shí),建議使用
ASIdentifierManager類的advertisingIdentifier替代 IDFV。