##IDFA(广告标识符)-identifierForldentifier
依赖
:AdSupport.framework
系统支持
:iOS6及以上系统
获取方式
:[ASIdentifierManager sharedManager].advertisingIdentifier.UUIDString
定义
: 由数字和字母组成的用来标识唯一设备的字符串。
特点
:
每个设备只有一个IDFA,不同APP在同一设备上获取IDFA的结果是一样的
设备重启不会产生新的IDFA
但IDFA存在重新生成的情况:
用户完全重置系统(设置程序 -> 通用 -> 还原 -> 还原位置与隐私)
用户明确还原广告(设置程序-> 通用 -> 关于本机 -> 广告 -> 还原广告标示符)
注意:Appstore禁止不使用广告而采集IDFA的app上架
。请参考:如何防止应用因获取IDFA被AppStore拒绝
##IDFV-identifierForVendor
依赖
:UIKit.framework
系统支持
:iOS6及以上系统
获取方式
:[UIDevice currentDevice].identifierForVendor.UUIDString
定义
:由数字和字母组成的用来标识唯一设备的字符串。
特点
: 根据vendor的值,如果vendor相同,则返回同一字符串;如果vendor不同,则返回不同的字符串。
vendor解释
:英文解释为卖家,小贩。根据xcode文档解释,正常情况下,会根据App Store提供的数据进行判断。但是如果app不是通过app store进行安装的(如企业应用或开发调试阶段),那么会根据bundle ID判断。
判断准则
如:com.example.app1和com.example.app2,只有最后的后缀不同,所以会产生相同的vendor ID
详细参考:iOS唯一标示符引导
:https://possiblemobile.com/2013/04/unique-identifiers/