Answers:
[[UIDevice currentDevice] uniqueIdentifier]
返回iPhone的唯一ID。
编辑:
-[UIDevice uniqueIdentifier]
现在已弃用,并且正在使用该应用程序从App Store拒绝。现在,以下方法是首选方法。
如果您需要创建多个UUID,只需使用此方法(使用ARC):
+ (NSString *)GetUUID
{
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUUID);
CFRelease(theUUID);
return (__bridge NSString *)string;
}
编辑:2014年1月29日:如果您的目标是iOS 6或更高版本,则现在可以使用更简单的方法:
NSString *UUID = [[NSUUID UUID] UUIDString];
这是我使用的符合ARC的简单代码。
+(NSString *)getUUID
{
CFUUIDRef newUniqueId = CFUUIDCreate(kCFAllocatorDefault);
NSString * uuidString = (__bridge_transfer NSString*)CFUUIDCreateString(kCFAllocatorDefault, newUniqueId);
CFRelease(newUniqueId);
return uuidString;
}
在iOS 6中,您可以轻松使用:
NSUUID *UUID = [NSUUID UUID];
NSString* stringUUID = [UUID UUIDString];
Apple文档中的更多详细信息
最简单的技术是使用NSString *uuid = [[NSProcessInfo processInfo] globallyUniqueString]
。请参阅NSProcessInfo类参考。
在Swift 3.0中
var uuid = UUID().uuidString
我在这里上传了ObjC的Guid类的简单但快速的实现:obj-c GUID
Guid* guid = [Guid randomGuid];
NSLog("%@", guid.description);
它也可以在各种字符串格式之间进行解析。