唯一识别iOS设备的最佳方式?

时间:2015-09-29 15:09:05

标签: ios mac-address udid identify

我知道以下方法是否存在缺陷

  • UDID
  • 广告标识符
  • 供应商ID

UDID的问题在于它已被弃用,甚至不能用于ios7,其他两个问题是用户可以通过软件重置手机或重新安装应用程序来更改它们

我找到的另一个有趣的解决方案是自己随机生成一个,然后保存到钥匙串以避免在重新安装应用程序时删除,但这会在软件重置时起作用吗?当然,两个设备随机生成相同ID的可能性非常小?

我认为最好的选择可能是使用UDID,但我想知道,即使从ios7开始UDID不正确,它仍然是唯一的吗?

另一种选择是MAC地址,但据我所知,这些

没有API

请告知最佳选择

1 个答案:

答案 0 :(得分:0)

无法启动iOS 7推断MAC地址。但是,您可以使用以下内容:

[[[UIDevice currentDevice] identifierForVendor] UUIDString]

Apple Documentation

  

当用户从中删除所有该供应商的应用时,该值会发生变化   该设备随后重新安装其中的一个或多个。价值   也可以在使用Xcode安装测试版本或安装时   使用ad-hoc分发的设备上的应用程序。因此,如果你的应用程序   在任何地方存储此属性的值,您应该优雅地   处理标识符更改的情况。