如何在iOS 6和iOS 7中获取UDID

12

我希望获取设备ID并将其发送到Web服务中。如何在iOS 6中获取UDID

谢谢


尝试这个:http://yuvarajmanickam.wordpress.com/2013/02/02/how-to-detect-ios-device-udid-name-version-model-by-programmatically/ - Chirag Pipaliya
2个回答

26

由于安全/隐私原因,iOS 6+中不再提供UDID。相反,请使用identifierForVendoradvertisingIdentifier

identifierForVendor:

一种包含字母数字的字符串,用于将设备唯一地标识为应用程序的供应商。(只读)

此属性的值对于来自同一供应商并在同一设备上运行的应用程序是相同的。对于来自不同供应商的同一设备上的应用程序以及不考虑供应商的不同设备上的应用程序,则返回不同的值。

advertisingIdentifier:

每个设备独有的包含字母数字的字符串,仅用于提供广告。(只读)

与UIDevice的identifierForVendor属性不同,所有供应商都返回相同的值。此标识符可能会更改-例如,如果用户擦除设备-因此您不应缓存它。

这篇文章很好地解释了它。

另外,请查看苹果文档中的 identifierForVendoradvertisingIdentifier


如何获取设备ID以进行唯一标识? - iDia
我已经编辑过了。你应该使用“identifierForVendor”或者“advertisingIdentifier”。 - Wes Cossick
1
对于临时测试人员,他们需要能够找到自己的UDID,以便我可以将其添加到配置文件中。很遗憾,现在你无法从手机上查看UDID,这是一个麻烦。因此,许多人不再将设备连接到iTunes。 - Roger Gilbrat
@RogerGilbrat 我不知道自从这篇文章发表以来是否有所改变,但我的临时测试人员在运行iOS 6的设备上可以使用应用程序(如UDID工具)获取他们的UDID。 - momo

2
请查看OpenUDID

OpenUDID是iOS上UIDevice类的uniqueIdentifier属性(即UDID)的替代品,也是iOS和Android的行业友好型等效品,最近还支持Windows C#和Silverlight(请参见上面的链接)。

编辑:确保自2013年5月1日起,对于iOS 6,请使用此分支,直到主分支更新:

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接