https://www.jianshu.com/p/c3c837ee80ff
idfa
广告标识符
一旦开启了 设置-》隐私-〉广告-》限制广告跟踪 之后, 获取到的idfa将会是一串00000
而且每次开启在关闭之后 相应的idfa也会重新生成,相当于还原了一次广告标识符
idfv
IDFV(identifierForVendor):Vendor 标示符,也被称为厂商标识符。只要用户的设备中没有卸载当前 Vendor 的所有 APP,则不会发生变化。什么是 Vendor ?
可以理解成 bundleID 的前两部分,例如对于 com.joy.app_1 和 com.joy.app_2 这两个 bundleID 来说,就属于同一个 Vendor ,共享同一个 IDFV。
不应理解成app id prefix 。用同一个公司证书打包, bundle id 前两部分相同, 则能取到相同的厂商标示符。
NSString *idfv = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
IDFV 比较适合追踪用户行为,目前多配合 Keychain 来搭配使用,来保证不管是否卸载重装,IDFV 都是不变的。
uuid
UUID(Universally Unique IDentifier):通用唯一识别码
NSUUID 与之前的 CFUUID 是一致的,只是改成了 Objective-C 的接口而已,NSUUID 每次获取的值都会发生变化,但是它会保持唯一性。
imei
IMEI(International Mobile Equipment Identity):国际移动设备身份码,在手机组装完成后赋予的一个全球唯一的号码,由于此时 iPhone 只支持单卡,所以 IMEI 和 iPhone 是一一对应的。
iOS 2 提供了一种方法获取 IMEI,但是为了保护用户隐私,iOS 5 以后苹果不再允许获取 IMEI 了,如果你在应用中获取 IMEI,可能会遭到 Apple Store 的拒绝。
mac地址
在 iOS 7 之后获取到的 Mac 地址为一固定值。
udid
苹果 iOS 设备的唯一识别码,在 iOS 6(2013 年 5 月 ) 以后被 Apple 禁止。