https://lhh3520.tistory.com/322



어플을 개발하다보면

디바이스 마다 고유넘버를 수집해야할

경우가 생기는 데요..


디바이스에서 고유넘버를

가지고 오는 방법 입니다.



원래는 iOS 에서는

UDID 라는걸 사용했었는데요

이게 iOS5 부터는 사용을

못하게 변경되었습니다.


그래서 UDID 대신

UUID

라는 값을 사용하도록

변경 되었습니다.



그리고 iOS6 부터는

이 값을 가져오기 아주 쉽게

만들어 주는 함수가

추가 되었습니다.


[ 참조 ]

https://developer.apple.com/library/ios/documentation/Foundation/Reference/NSUUID_Class/index.html#//apple_ref/occ/clm/NSUUID/UUID



위에서 제공해주는

기능을 이용해서 아래처럼

구현해서 사용하시면 됩니다.


저는 편의상

NSUserDefaults 를

사용했는데 다른걸 사용해도

상관은 없습니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
- (const char*)getDeviceUUID
{
    NSUserDefaults* userDefault = [NSUserDefaults standardUserDefaults];
    NSString* iOSUUID = [userDefault stringForKey:@"UUID_KEY"];
     
    // new uuid
    if ( iOSUUID == nil || [iOSUUID  isEqual: @""] )
    {
        iOSUUID = [[NSUUID UUID] UUIDString];
    }
     
    // save uuid
    [userDefault setObject:iOSUUID forKey:@"UUID_KEY"];
    [userDefault synchronize];
     
    return [iOSUUID UTF8String];
}



구현된 기능으로

실행을 하면 아래 빨간색 부분처럼

UUID 값을 아주 쉽게 얻을 수

있습니다.




이상 iOS 디바이스 에서

UUID 값을 가져오는 방법

이었습니다.