logo

English

이곳의 프로그래밍관련 정보와 소스는 마음대로 활용하셔도 좋습니다. 다만 쓰시기 전에 통보 정도는 해주시는 것이 예의 일것 같습니다. 질문이나 오류 수정은 siseong@gmail.com 으로 주세요. 감사합니다.

App UUID 생성 예시

by lizard2019 posted Dec 10, 2025
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

Objective-C 에서 UUID 생성 및 NSUserDefaults 저장 방법

아래 예제는 UUID 문자열을 생성해서 [NSUserDefaults standardUserDefaults] 에 저장하고,
이미 저장된 값이 있으면 그것을 그대로 재사용하는 코드입니다.


1. UUID 생성 후 NSUserDefaults에 저장하기

한 번 생성한 UUID를 app_uuid 키로 저장하고, 이후에는 같은 값을 계속 사용합니다.


// UUID 생성 & NSUserDefaults 저장 / 로드
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

NSString *uuid = [defaults stringForKey:@"app_uuid"];
if (uuid == nil) {
    // UUID 최초 생성
    uuid = [[NSUUID UUID] UUIDString];
    [defaults setObject:uuid forKey:@"app_uuid"];
    // [defaults synchronize];   // 최신 OS에서는 거의 필요 없음
}

NSLog(@"UUID = %@", uuid);


2. 함수 형태로 만들기 (추천)

아래처럼 메서드로 만들어 두면, 어디에서든 간단하게 호출해서 UUID를 사용할 수 있습니다.


+ (NSString *)loadOrCreateUUID {
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    NSString *uuid = [defaults stringForKey:@"app_uuid"];
    
    if (uuid == nil) {
        uuid = [[NSUUID UUID] UUIDString];
        [defaults setObject:uuid forKey:@"app_uuid"];
    }
    
    return uuid;
}

// 사용 예시
NSString *uuid = [MyClass loadOrCreateUUID];
NSLog(@"UUID = %@", uuid);


3. 참고 사항

  • synchronize는 최신 iOS / macOS에서는 자동 저장이 되기 때문에 거의 호출할 필요가 없습니다.
  • 앱을 삭제했다가 다시 설치하면 NSUserDefaults 값은 모두 초기화됩니다.
  • 앱 삭제 후에도 유지되는 영구적인 ID가 필요하다면, Keychain에 UUID를 저장하는 방식을 사용하는 것이 좋습니다.
TAG •

List of Articles
No. Subject Author Date Views
» App UUID 생성 예시 lizard2019 2025.12.10 199
56 iOS - Socket Nagle 알고리듬 OFF digipine 2017.11.01 1708
55 iOS - Objective-C 남아있는 메모리 공간 확인 방법 digipine 2017.11.01 1756
54 Apple AppStore App Review 시 Reject 피하기 위한 방법 digipine 2017.11.02 1790
53 iOS - Thread Loop 내에서 UI 업데이트 방법 digipine 2017.11.01 1817
52 iOS - NSURLConnection로 다중 다운로드 구현 digipine 2017.11.01 1932
51 iOS - UILabel 에서 AttributeString 사용하기 digipine 2017.11.02 1970
50 iOS - NSString의 언어 인코딩 메소드 정리 digipine 2017.11.01 2007
49 iOS - NSString 와 NSData 간의 데이터 상호 변환 digipine 2017.11.01 2021
48 iOS - View 이동 전환 하기 총정리 digipine 2017.11.01 2099
47 macOS Daemon 관련 시스템 폴더 목록 lizard2019 2024.03.08 2127
46 OpenAL PDF, Sample Source file digipine 2017.11.02 2191
45 iOS - Query string을 Decode 하는 소스 digipine 2017.11.01 2204
44 iOS - BSD Socket 네트워크 프로그래밍 digipine 2017.11.01 2204
43 iOS - OpenURL으로 HTML에서 어플 실행 digipine 2017.11.01 2267
42 iOS - BLE 장치용 ANCS Library for ANCS digipine 2017.11.02 2270
41 iOS - Sleep Mode Blocking 방법, 앱실행시 슬립모드 진입 방지 digipine 2017.11.01 2284
40 iOS - sizeWithFont 메소드 deprecated와 sizeWithAttributes digipine 2017.11.02 2290
39 iOS , MacOS, iPhone용 GZipStream class 구현하기 digipine 2017.11.01 2302
38 XCode 8 업데이트 후 Code Sign Error 발생 시 해결법 1 digipine 2017.11.02 2310
Board Pagination Prev 1 2 3 Next
/ 3