반응형
UDID 를 사용하면 간단하게 고유값을 활용할 수 있지만 ios5.1 부터 쓰지말라고 apple 에서 협박함 ㅠㅠ
무시하고 쓰다가 어느순간 reject 당할지 모르니 UUID 를 쓰기로 함
UDID 는 기기별로 고유한 값이므로 절대(?) 변하지 않으므로 활용하기 참 편한데 쓰지말라고 하니 뭐 ㅠㅠ
UUID 는 랜덤하게 고유값을 생성해주는 거..생성할때마다 매번 다른값이 나옴..
필요할때마다 매번 생성하면 단말기 고유값의 의미가 없어지므로 초기에 한번 생성하여 단말기에 저장하여 사용
//유니크아이디 생성 후 로컬에 저장 한번 생성 후 값 있으면 더이상 생성안함 if([[NSUserDefaults standardUserDefaults] stringForKey: @"uuid"] == NULL){ CFUUIDRef uuid = CFUUIDCreate(kCFAllocatorDefault); NSString *string = (NSString *)CFUUIDCreateString(kCFAllocatorDefault, uuid); [[NSUserDefaults standardUserDefaults] setObject:string forKey: @"uuid"]; } NSString *uniqueid = [[NSUserDefaults standardUserDefaults] stringForKey: @"uuid"]; NSLog(@"uuid : %@", uniqueid);
요렇게 코딩해서 사용하면 됨
UUID 는 앱 업데이트나 앱 삭제 후 재 설치시 새로 발급되므로 참고하세요!!
iOS6 부터 이런 단점을 개선했다고 합니다.
UIDevice 클래스에 identifierForVendor 라는 프로퍼티를 활용하면 된다네요
반응형
'iOS' 카테고리의 다른 글
WebView 호출 POST 방식으로.. (0) | 2013.04.29 |
---|---|
앱등록시 Invalid Binary 문제(png 파일 오류) (0) | 2012.11.28 |
Code Sign error: Provisioning profile 에러 해결방법 (0) | 2012.11.27 |
ios NSXMLParser 사용법 (0) | 2012.11.22 |