ios唯一标示符

1.UDID

NSString *uuidIdentifier = [[NSUUID UUID] UUIDString];

唯一手机标示,非常好用,永远不变,但在iOS5之后已经被废弃。
2.CFUUIDRef 和 NSUUID

NSString *uuidIdentifier = [[NSUUID UUID] UUIDString];
CFUUIDRef cfuuid = CFUUIDCreate(kCFAllocatorDefault);
NSString *cfuuidString = (NSString*)CFBridgingRelease(CFUUIDCreateString(kCFAllocatorDefault, cfuuid));
CFRelease(cfuuid); 

这两个可以理解为是一样的,只不过一个是C接口一个是OC接口,CFUUIDRef出现的比较早,NSUUID在iOS6之后出现。这两个方法每次调用都会产生一个新的唯一的值。
3.IDFA

NSString *idfa = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];

iOS6之后出现,当用户还原系统或者重置广告标识,就会产生一个新的值。当用户限制了广告标识符时,依然会idfa依然有值,不过是一个新的值。
4.IDFV

[[[UIDevice currentDevice] identifierForVendor]UUIDString];

iOS之后出现,同一个公司的多个app,IDFV的值是相同的,判断是不是同一个公司的app方式如下:com.company.app1 和 com.company.app2 如果com.company相同,就归为同一个公司的app,产生的IDFV是相同的。当所有同一个公司的app都被删除后,下次再安装时,IDFV会产生一个新的值。
5.OPENUDID (开源代码)
在iOS7之前,只要当前手机上,有使用过OPENUDID的app,那么获取到的唯一标识,就是那个使用了OPENUDID代码的app的唯一标识。在iOS7之后,由于UIPasteboard这个类的pasteboardWithName:方法,从名字只能获取到com.company相同的app中创建的粘贴板,所以openudid的作用和IDFV的作用类似了。在相同com.company的app都删除之后,openudid就会被重置。
最后,除了udid所有的标示符,在系统重置之后都会生成新的值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值