苹果公司正在改变他们的隐私设置为iOS6的和贬低的设备的UUID(UDID的)。 根据WWDC演讲,并有两个替代的UDID,无论是在该文档UIDevice
类:
-identifierForVendor
- 编号是从相同的显影剂应用程序之间是相同的。
- 擦除以去除该组ID的最后一个应用程序。
- 备份。
-identifierForAdvertising
- 独有的设备。
- 适用于所有的应用程序; 用于广告 - iAd的已经从UDID转换为iOS 6和更高。
- 与“抹掉所有内容和设置”重置。
- 备份。
在我看来,这-identifierForVendor
不如-identifierForAdvertising
因为它会得到重置从供应商的应用程序的最后卸载,并通过“删除所有内容和设置”。
没有什么优势-identifierForVendor
有超过-identifierForAdvertising
?
Answer 1:
重要提示 :
苹果刚刚发布的iOS 6.0和NDA已经解除。
对于开发商谁抢先包括所引用的代码
[[UIDevice currentDevice] identifierForAdvertising]
这种方法还没有被列入在iOS 6.如果你使用上面的方法,您的应用(最有可能)崩溃和被拒绝!
相反,苹果创造了一个新的类ASIdentifierManager
,其中包括法advertisingIdentifier
。 下面是苹果的文档就可以了:
Answer 2:
用户可以限制他们的手机上使用的广告跟踪。 请参见本文的退出机制设置>常规>关于>广告。
新ASIdentifierManager
类有一个属性advertisingTrackingEnabled
,它返回true或false取决于如果用户已限制广告跟踪。 尽管设备的广告标识符是由返回advertisingIdentifier
财产无论选择退出,你不应该使用,如果用户选择使用了标识。
所以identifierForVendor的好处是,你总是可以访问和使用该ID为手机用户无关的选择加入或退出广告追踪的权利。
Answer 3:
我怀疑苹果会直接拒绝您的应用程序,如果您使用identifierForAdvertising
用于任何未公布相关的(即,如果您发送的identifierForAdvertising
到自己的服务器,即使你不是一个广告网络,或者如果您发送identifierForAdvertising
在与其它数据相同的请求可能潜在地识别个体)。
如果我的怀疑是正确的,优势identifierForVendor
超过identifierForAdvertising
是,它不会让你的应用程序被拒绝。
Answer 4:
这意味着它们是两个不同的目的的两个不同的ID。 我倒觉得identifierForVendor是使用要做到这一点需要应用程序链接到一个特定的用户/设备的事情,如提供推送通知和更新用户的应用程序数据的服务器端(像他们的得分或任何其它数据被存储在一个他们)。
该identifierForAdvertising应该使用的东西,如针对性的广告,并检查特定广告活动的有效性(检查,看看哪些设备上安装应用程序,由于特定的广告)。
Answer 5:
使用厂商ID。 这是一个很有启发性的文章http://www.doubleencore.com/2013/04/unique-identifiers/
Answer 6:
基于在IOS 6装置的唯一标识符创建一个uniqueString:
#import <AdSupport/ASIdentifierManager.h>
NSString *uniqueString = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
NSLog(@"uniqueString: %@", uniqueString);
Answer 7:
这些API是如此糟糕的设计,这显然说 - 苹果不希望我们能够识别用户的设备。
试想一下,在identifierForVendor描述。
如果用户删除来自同一供应商的所有应用程序它被删除。 :(这是不可靠的 - 可以为零(文档建议以“等待”返回了一段时间,如果发生这种情况:(。
他们没有使用明显的解决方案,它的工作原理任何时候和不依赖于安装/将删除 - 返回SHA-1(或任何其他哈希)内部硬件设备ID与团队ID串联。
Answer 8:
identifierForAdvertising
是在跟踪方面可能优越性,但可能会受到当前和今后退出用户。 在另一方面identifierForVendor
不一样可能会受到用户的。
Answer 9:
要知道最重要的事情是,identifierForVendor的备份只能恢复到同一台设备。 如果备份恢复到差分设备标识符被清零。
Answer 10:
用户可以改变在identifierForAdvertising设置任何时间,identifierForVendor变化重新安装应用程序之后,如果从该供应商在设备上没有更多的应用程序。
这里是替代方式和GET或最佳的解决方案持续,交叉安装设备标识符:
说明: https://blog.onliquid.com/persistent-device-unique-identifier-ios-keychain/
代码: https://gist.github.com/miguelcma/e8f291e54b025815ca46
文章来源: iOS6 UDID - What advantages does identifierForVendor have over identifierForAdvertising?