关于uuid:跨应用程序的唯一iOS设备ID

Unique iOS Device ID Across Applications

本问题已经有最佳答案,请猛点这里访问。

我目前正在开发一套将使用同一台服务器进行身份验证的iOS应用程序。服务器使用UDID进行设备身份验证。我知道unique identifier现在已经被弃用了,所以我想知道跨应用程序使用唯一标识符的最佳实践是什么?(我知道如何生成我自己的并将其存储在钥匙链中,但这将是特定于应用程序的)我已经看到了有关供应商标识符和用于认证的标识符的帖子


如我们所知,UniqueIdentifier在iOS 5.0中已被弃用,因此Docs建议您使用cfuuid

相反。您可以使用获取cfuuid

1
2
3
CFUUIDRef uuidRef = CFUUIDCreate(kCFAllocatorDefault);
NSString *uuidString = (NSString *)CFUUIDCreateString(NULL,uuidRef);
CFRelease(uuidRef);

请将UuidString保存在用户默认值或其他位置,因为不能再次生成相同的UuidString。

希望对你有帮助。


博士说:

[uniqueIdentifier is] deprecated in iOS 5.0. Use the identifierForVendor property of this class or the advertisingIdentifier property of the ASIdentifierManager class instead, as appropriate, or use the UUID method of the NSUUID class to create a UUID and write it to the user defaults database.