IDFV 简介

什么是 IDFV

IDFV 是一个由字母数字构成的字符串,用于唯一标识程序供应商的设备。

如何获取 IDFV

NSString *vendor = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
//输出结果:94B854B0-AC0B-4F7F-8F0D-E32824317E83

IDFV 的变与不变

  • 同一台设备上,来自同一个供应商的 App,IDFV 相同。
  • 同一台设备上,来自不同厂商的 App,IDFV 不同。
  • 不同设备的 IDFV 不同,与供应商无关。换言之,即使同一个厂商的 App,在不同设备上 IDFV 也不相同。
  • 当 iOS 设备上存在同一厂商的其他应用时,删除 App 重装,IDFV 保持不变。
  • 删除 iOS 设备上同一厂商全部 App,重新安装 App,IDFV 会发生改变。
  • 使用 Xcode 安装测试版本或 ad-hoc 包时,IDFV 会发生改变。

IDFV 生成规则

  • 通常 IDFV 由 AppStore 提供的数据决定。如果是企业包或开发包,IDFV 根据 App bundle ID 计算。
  • iOS 7 之后,Bundle ID 除去最后部分,其他剩余部分用于计算生成 IDFV。如果 Bundle ID 只有一部分组成,则全部用来参与计算。

IDFV 与 IDFA

  • 当实现广告投放系统时,建议使用 ASIdentifierManager 类的 advertisingIdentifier 替代 IDFV。

参考资料

  • identifierForVendor

你可能感兴趣的:(IDFV 简介)