设备UDID的替代品 - 准备自己

时间:2012-03-25 08:35:24

标签: ios app-store udid

  

可能重复:
  UIDevice uniqueIdentifier Deprecated - What To Do Now?

我知道有关于此的问题有很多问题,但我认为因为Apple正在提前进行并主动拒绝使用UDID的应用程序(http://pulse.me/s/7mzKE),我们的开发人员需要采取积极的方法,并批量讨论这个问题。

所以问题是 - 除了访问它的UDID属性之外,什么是唯一设备识别的良好,稳定和正确的替代方案?

5 个答案:

答案 0 :(得分:15)

这取决于您的需求...如果您正在寻找应用程序使用的简单设备标识符,那么弃用uniqueIdentifier方法的文档几乎可以提供您的答案:

  

不要使用uniqueIdentifier属性。要创建特定于应用程序的唯一标识符,可以调用CFUUIDCreate函数创建UUID,并使用NSUserDefaults类将其写入默认数据库。

CFUUIDCreate将返回您的应用程序独有的唯一手机标识符。您需要将其存储在NSUserDefaults中,因为如果您进行后续调用,将会更改。对于大多数用途来说,这就足够了,并不是Apple没有提供足够的警告来改变这种变化(iOS 5已经出现了六个月以上,开发人员的文档更长)。

其他方案是您需要跨应用程序(即移动广告网络)共享设备标识符的位置。这是一个更复杂的问题,有许多替代选项(也不能保证它们将来会存在:Apple弃用UDID API的主要原因可能是停止跨应用程序用户跟踪)

答案 1 :(得分:9)

我个人最喜欢的是OpenUDID。

您可以抓住GitHub here

我总结了我的想法并对其进行了简要描述here

答案 2 :(得分:4)

SecureUDID,基于OpenUDID但更安全,只能通过域(和盐)访问

More info

答案 3 :(得分:1)

在任何无线通信期间,协议规范已经公开了其中一个设备2或3 MAC地址。

答案 4 :(得分:0)

虽然我认为这不是一个典型的“我如何克服这一特定的技术挑战”,但我同意它非常重要,并且可以在某种程度上进行很好的讨论(不确定 - 维基?论坛?)。我有兴趣知道是否有关于Flurry beat this的讨论。