2011-08-20 3 views

답변

2

모든 속성과 메소드는 같은 일을 할 수있는, 유일 식별자에 액세스하려면 UIDevice Class Reference

에 설명되어 있습니다 이 새로운 있지만, 고유하지 않은 식별자 :

CFUUIDRef UIID = CFUUIDCreate(NULL); 
CFStringRef UIIDString = (CFUUIDCreateString(NULL, UIID)); 
NSString *string = [NSString stringWithFormat:@"%@",UIIDString];  
파일에 저장

및 고유 식별자

처럼 사용
+1

iOS5에서 uniqueIdentifier 속성은 사용되지 않습니다. http://techcrunch.com/2011/08/19/apple-ios-5-phasing-out-udid/ –

+0

@Suhail Patel, iOS 5의 사용자 ID는 어떻게 되는가? UDID없이? 거기에 가장 좋은 연습 방법이 있습니까? –

3

에서 iOS 5를 들어,을 만들 수 있습니다하십시오 UIDevice 개체와 관련된

+0

코드와 도움에 감사드립니다. –

+3

iOS 6 이상에서는 [[UIDevice currentdevice] identifierForVendor]를 사용할 수 있습니다. –

5

이것은 약간 구식이기 때문에 지금 나는 최신 답변을 제공하고 있습니다.

[[UIDevice currentDevice] uniqueIdentifier];부터 iOS 6까지 개발자가 적합하다고 판단했기 때문에 Suhail Patels 대답 조언을받습니다. 그들은 이제 개발자에게 [[UIDevice currentDevice] identifierForVendor];을 사용한다고 말하기 시작했지만 일부 개발자는 여전히 iOS 5 이하를 위해 개발 중이라고하더라도 여전히 uniqueIdentifier을 사용할 수 있는지 여부에 대해 혼란 스럽습니다. Apple는 말을 이것에 대해 약간 까다로운되었습니다 :

"Apps that use the `UDID` will be rejected in the App Store review process.." 

우리에게 좀 더 세부 사항을 제공 Apple에 가자.

어쨌든이 뒤에있는 혼란 때문에 일부 개발자는 OpenUDID을 사용하여 고유 식별자를 얻었습니다. 일부 개발자는 이제 UDID가 사용되지 않습니다 때문에 MAC 주소를 사용하여 시작하는 것이 적합 보았다

if ([[UIDevice currentDevice] respondsToSelector:@selector(identifierForVendor)]) { 
     // Use: [[[UIDevice currentDevice] identifierForVendor] UUIDString]; 
    } else { 
     // Use: [OpenUDID value]; 
    } 

편집 : 여기가 사용할 수있는 방법에 대한 몇 가지 코드입니다. 이는 MAC 주소가 하드웨어 기반이므로 변경할 수 없기 때문입니다. 당신의 그것들을 위해 MAC 주소 방법을 위해가는 사과는 Getting MAC Address에 약간의 샘플 코드를 제공했습니다.

+2

@downvoter downvote에 대한 이유를 남겨주세요. 그냥 downvote하지 마세요. 이유를 남겨두면 실수를 바로 잡을 수 있고, 대답을 향상 시키거나 그 이유를 해결할 수 있습니다. 그래서 이유를 떠나면 모든 사람들에게 도움이 될 것입니다. – Popeye

관련 문제