한국어

스마트폰앱

온누리070 플레이스토어 다운로드
    acrobits softphone
     온누리 070 카카오 프러스 친구추가온누리 070 카카오 프러스 친구추가친추
     카카오톡 채팅 상담 카카오톡 채팅 상담카톡
    
     라인상담
     라인으로 공유

     페북공유

   ◎위챗 : speedseoul


  
     PAYPAL
     
     PRICE
     

pixel.gif

    before pay call 0088 from app


https://stackoverflow.com/questions/427180/how-to-create-a-guid-uuid-using-ios



204

I want to be able to create a GUID/UUID on the iPhone and iPad.

The intention is to be able to create keys for distributed data that are all unique. Is there a way to do this with the iOS SDK?

315
[[UIDevice currentDevice] uniqueIdentifier]

Returns the Unique ID of your iPhone.

EDIT: -[UIDevice uniqueIdentifier] is now deprecated and apps are being rejected from the App Store for using it. The method below is now the preferred approach.

If you need to create several UUID, just use this method (with ARC):

+ (NSString *)GetUUID
{
  CFUUIDRef theUUID = CFUUIDCreate(NULL);
  CFStringRef string = CFUUIDCreateString(NULL, theUUID);
  CFRelease(theUUID);
  return (__bridge NSString *)string;
}

EDIT: Jan, 29 2014: If you're targeting iOS 6 or later, you can now use the much simpler method:

NSString *UUID = [[NSUUID UUID] UUIDString];
  • 21
    [[UIDevice currentDevice] uniqueIdentifier] has been deprecated as of iOS 5, and Apple is now rejecting apps that use it (as of March 2012). The rest of the response is still accurate. – Gorm Mar 28 '12 at 20:15
  • 11
    Having been around this question for a while, I'm pretty sure the original question wasn't about the device's unique identifier, but about just getting a useful general unique identifier for something. – Ryan McCuaig Apr 12 '12 at 3:43
  • 12
    To make this ARC compliant you must cast the string object and remove the autorelease call. In other words add the cast: NSString* string = (__bridge_transfer NSString*)CFUUIDCreateString(NULL, theUUID); – Paul de Lange May 7 '12 at 8:05 
  • 65
    As of iOS 6 you can use: NSString *UUID = [[NSUUID UUID] UUIDString]; – Symmetric Nov 19 '12 at 18:36
  • 1
    If i use [[NSUUID UUID] UUIDString]; in iOS7 and above, won't my app rejected by Apple? – Whoami Sep 9 '14 at 7:25
100

Here is the simple code I am using, compliant with ARC.

+(NSString *)getUUID
{
    CFUUIDRef newUniqueId = CFUUIDCreate(kCFAllocatorDefault);
    NSString * uuidString = (__bridge_transfer NSString*)CFUUIDCreateString(kCFAllocatorDefault, newUniqueId);
    CFRelease(newUniqueId);

    return uuidString;
}
  • 35
    Honestly this should be the accepted answer, the original question asked for a GUID or UUID generator, and everyone responded with how to obtain the phone's UDID. A Universally Unique Identifier (UUID) and Unique Device Identifier (UDID) are not the same thing. – Joe Mar 11 '13 at 1:51
  • 1
    here is a straight line one NSString *UUID = [[NSUUID UUID] UUIDString]; – Adeel Aug 31 '16 at 9:11
86

In iOS 6 you can easily use:

NSUUID  *UUID = [NSUUID UUID];
NSString* stringUUID = [UUID UUIDString];

More details in Apple's Documentations

46

Reviewing the Apple Developer documentation I found the CFUUID object is available on the iPhone OS 2.0 and later.

22

The simplest technique is to use NSString *uuid = [[NSProcessInfo processInfo] globallyUniqueString]. See the NSProcessInfo class reference.

  • 8
    That returns a unique identifier for the process. It has no resemblance to a GUID. From the docs: "The ID includes the host name, process ID, and a time stamp, which ensures that the ID is unique for the network" – Matt Spradley May 1 '11 at 2:21
  • You could be right. It's a pragmatic one-liner, and probably isn't as bulletproof as CFUUID. Anyone who needs the greater rigour ought to drop down to CoreFoundation. – Ryan McCuaig May 6 '11 at 18:51 
22

In Swift:

var uuid: String = NSUUID().UUIDString
println("uuid: \(uuid)")
15

In Swift 3.0

var uuid = UUID().uuidString
7

I've uploaded my simple but fast implementation of a Guid class for ObjC here: obj-c GUID

Guid* guid = [Guid randomGuid];
NSLog("%@", guid.description);

It can parse to and from various string formats as well.

번호
제목
글쓴이
55 How to set value for object in objective c 셋팅 값 저장 하기
admin
2019-05-04 5114
54 Xcode objective c 설명 쉽게이해 간단 쉽게공부하기 프로그램 거져 날로 먹기 사이트
admin
2019-06-15 5109
53 Undefined symbols _AudioServicesPlaySystemSound 에러 조치방법
admin
2019-06-14 5101
52 KeychainItemWrapper.h KeychainItemWrapper.m 다운로드 키체인 소스코드 file
admin
2019-06-14 5035
51 iOS objective c. Button. Label image color setting
admin
2019-06-10 5000
50 Objective-C NSString 관련 메소드 다루기
admin
2019-06-06 4943
49 iOS Objective-C로 하는 비동기 처리
admin
2019-05-03 4931
48 변수와 상수 - 왕초보를 위한 스위프트 프로그래밍 강좌[iOS app with xcode&swift]
admin
2019-01-15 4916
47 Java 쓰다가 Objective-C 문자열 다루기
admin
2019-05-16 4805
46 How do I rename an Xcode project 프로젝트 이름변경 완벽하게 하는 방법 순서
admin
2019-04-21 4788
45 Apple Developer Documentation
admin
2019-05-17 4786
44 ios – NSDictionary 모든 키 명령
admin
2019-06-03 4785
43 Xcode objective c 변수 선언 전달
admin
2019-06-15 4780
42 버튼 연결 - 왕초보를 위한 스위프트 프로그래밍 강좌[iOS app with xcode&swift]
admin
2019-01-15 4779
41 버튼 구현 - 왕초보를 위한 스위프트 프로그래밍 강좌[iOS app with xcode&swift]
admin
2019-01-15 4741
40 if~else 왕초보 스위프트 프로그래밍 강좌 iOS app development with xcode&swift
admin
2019-01-15 4731
39 UDID 무엇인가 계산하기
admin
2019-04-27 4591
38 카메라 & 마이크 퍼미션 요청 #12
admin
2020-01-18 4525
37 Apple Developer Certificates, Identifiers & Profiles Identifiers > App IDs 만들기
admin
2019-04-23 4516
36 아웃렛 & if~else 왕초보 스위프트 프로그래밍 강좌 iOS app development with xcode&swift
admin
2019-01-15 4493
35 How to find your Device ID (UUID) IOS
admin
2019-04-27 4477
34 GPL·AGPL·MPL 오픈소스SW 라이선스 의미 뜻 설명
admin
2019-04-27 4414
33 개발자를 위한 OS X(>= Catalina) 설정
admin
2020-01-18 4413
32 버전(Version)을 제대로 이해하기
admin
2019-04-08 4388
31 [iOS8] Today Extension (Widget) 개념 및 제약사항, 앱과의 데이터 공유
admin
2019-04-23 4331
30 델리게이트 delegate 무엇인가 잘된설명
admin
2019-04-11 4310
29 초보를 위한 CocoaPods 코코아팟 사용법 Xcode와 연동
admin
2019-04-30 4255
28 델리게이트 프로토콜 정확한 쉽게 이해 Objective C:- Protocol And Delegate in iOS
admin
2019-04-27 4198
27 UDID 사용 제한 정책 대안
admin
2019-04-27 4194
26 잘된 동영상 강의 책 보는 요령, 객체지향 역사, Objective C 기초 강의
admin
2019-04-23 4191