2011年2月16日 星期三

Create an UUID by using Objective-C

許多computer language都有方法可以產生UUID,所以Objective-C當然也不例外。目前查詢到而且驗證過可用的方法有兩種:
  • 使用C function:使用以下程式碼即可
- (NSString *)createUUID{
// Create universally unique identifier (object)
CFUUIDRef uuidObject = CFUUIDCreate(kCFAllocatorDefault);
// Get the string representation of CFUUID object.
NSString *uuidStr = [(NSString *)CFUUIDCreateString(kCFAllocatorDefault, uuidObject) autorelease];
CFRelease(uuidObject);
return uuidStr;
}

  • 使用NSProcessInfo 類別:使用以下程式碼即可
    NSString *uuid = [[NSProcessInfo processInfo] globallyUniqueString];
兩種方法都可以產生UUID,但是長度不一樣。NSProcessInfo因為參考比較多資訊來產生,所以產生的長度會比較長,為58個字元長度

沒有留言: