iPhone 및 iPad에서 GUID / UUID를 만들 수 있기를 원합니다.
의도는 모두 고유 한 분산 데이터에 대한 키를 작성할 수 있도록하는 것입니다. iOS SDK로 이것을 수행하는 방법이 있습니까?
답변
[[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의 설명서에 대한 자세한 내용
답변
답변
에서 스위프트 :
var uuid: String = NSUUID().UUIDString
println("uuid: \(uuid)")
답변
가장 간단한 기술은 사용하는 것 NSString *uuid = [[NSProcessInfo processInfo] globallyUniqueString]
입니다. 참고 항목 NSProcessInfo의 클래스 참조하십시오.
답변
에서 스위프트 3.0
var uuid = UUID().uuidString