首页 技术 正文
技术 2022年11月13日
0 收藏 607 点赞 2,232 浏览 2238 个字

1.Vendor标识符 identifierForVendor一个英文字符串,对于相同的产品商(这里指com.zhang.*,也就是前缀一样),其唯一的标识设备。* 这个值对于相同的产品商在相同的设备上是相同的。* 这个值在不同的产品商在相同的设备上是不同的。* 在不同的设备上是不同的(不管产品商是否一致)。一般来说,产品商是根据AppStore上的data确定的.如果app不是从AppStore下载安装的(例如企业版app和还在development的app),那么这个标识符是根据app的bundle id计算出来的,是bundle id的反转DNS格式。在iOS6上,前两个字符串用来(com.zhang.demo中的com.zhang.)生成vendor id,如果bundle id只有一个组成(demo),那么就用整个bundle id来生成。在iOS7,除了最后一个组件,其他的都用来生成vendor id,如果bundle id只有一个组成(流入demo),那么就用整个bundle id来生成。例如:iOS不同IDS说明如果它的值是空的,等待并且稍后重新获取该值,这种情况是可能发生的,例如用户重启了手机,而且在用户解锁之前。当你使用广告服务的时候,使用advertisingIdentifier,而不是使用该属性。获取方式:

NSLog(@"%@",[[[UIDevice currentDevice] identifierForVendor] UUIDString]);

2.IDFAadvertisingIdentifier一个英文字符串,对于每一个设备是唯一的,仅仅用于广告服务。不像identifierForVendor,如果相同的公司出品的产品的com.shuquwangluo.相同,identifierFOrVendor是返回所有相同给的值。这个值是可能改变的,例如用户抹去设备,因此开发者不能去缓存它。注意:在iOS10和以后,当用户限制广告踪迹(在设置—》隐私—》广告—》限制广告踪迹)advertisingIdentifier会返回所有的0。如果它的值是空的,等待并且稍后重新获取该值,这种情况是可能发生的,例如用户重启了手机,而且在用户解锁之前。测试:当我没有限制广告踪迹之前: 539477AE-36AE-4E33-B22B-B9BF30BB2D07当我限制广告踪迹后: 00000000-0000-0000-0000-000000000000获取方式:NSLog(@”%@”,[[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]);3.CFUUID从iOS2.0开始就已经出现了CFUUID,它是CoreFoundation的一部分,因此属于C语言风格。CFUUIDCreate方法用来创建CFUUIDRef,并且可以获取一个响应的字符串。获取方式:    CFUUIDRef cfuuid = CFUUIDCreate(kCFAllocatorDefault);
    NSString *cfuuidStr = (NSString *)CFBridgingRelease(CFUUIDCreateString(kCFAllocatorDefault, cfuuid));    NSLog(@”%@”,cfuuidStr);这个CFUUID值系统并没有存储,每次调用CFUUIDCreate,系统都会返回一个新的唯一标识符。如果你希望存储这个值,需要用NSUserDefault或者其他存储方式进行存储。例如: 2A2F49D3-6473-4558-9035-26E14F53691D4.NSUUID创建和返回一个UUID,该UUID是RFC4122版本的随机字节。获取方式:[[NSUUIDUUID] UUIDString]和CFUUID一样,这个值系统也不会存储,每次调用的时候都会获取一个新的唯一标识符。如果要存的话需要自己操作。5.UDIDUDID在iOS5以及以后就被启用了。在SDK里面没有找到相关的介绍,这里就不在介绍了。 下面是用Console输出的结果: 

-- ::13.540549 IDADemo[:] 、vender:2F527F67--48F2-B3CF-42697B6BDB3F
-- ::13.540596 IDADemo[:] 、NSUUID:A8C331F4-6ADD--BF7C-0E83275BC1B1
-- ::13.540646 IDADemo[:] 、CFUUID:324FF6C1--492D--7F2763632EDA
-- ::13.541177 IDADemo[:] 、idfa:539477AE-36AE-4E33-B22B-B9BF30BB2D07
-- ::13.541203 IDADemo[:] 、UDID:已经弃用,SDK里面没有找到相关介绍

总结1.UUIDs(Universally Unique Identifieers)也被叫做GUIDs(Globally Unique Identifiers)或者IIDs(Interface Identifiers),它是一个128为字节的值。标准的UUIDs是由ASCII代表的,例如:68753A44-4D6F-1226-9C60-0050E4C00067  。2.以上的各种ids,除了CFUUID不是NSUUID类之外,其他的几个都是NSUUID类型。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,090
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,567
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,415
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,187
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,823
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,906