아이폰 OS는 고유 식별 장치를 얻을 수

  때때로, 우리가 유일하게 같은이 장치의 식별로, 장치 식별을 기록해야하는 것은 이미 프로모션 쿠폰을 보내거나 앱을 등등 시도하고 다운로드 여부 없습니다. 가장 쉬운 방법은 UDID 장치 얻는 것입니다 # [UIDevice currentDevice] 고유 식별자] #을 하지만, iOS6의 애플은이 방법의 밀봉에 사용자 정보의 유출을 걱정 후, 나중에 고유 마크 맥 주소로 식별 할 수 있습니다 # [자체 MAC 주소] # , 하지만 곧도의 밀봉합니다. 이제 고유의 의미하여 식별하는 얻으려면?

DeviceCheck

  iOS11 후 통해 DeviceChek는 식별 장치 (장비 검사)를 기록하는,이 iOS11 애플 관계자는 새로운 API는 서버에서 장치의 현재 상태를 얻을 수 있습니다 제공합니다.

  DeviceCheck 애플 개발자의 자신의 서버에 의해 개발자가 서버와 통신하고, 하나의 장치에 두 개의 비트 데이터를 설정할 수 있습니다.

  간단히 말해, 당신이 DeviceCheck의 API 토큰 장치에서 생성,이 토큰은 다음 자신의 서버로 전송 한 다음 업데이트하거나 장치의 값을 조회하는 서버와 애플의 API와 통신합니다. 두 비트의 데이터는 이러한 정보 상을 수신 여부와 같은 사용자를 추적하는 데 사용된다.

  DeviceCheck는 소프트웨어 개발자들에게 아이폰의 네 가지 작동 상태에 대한 정확한 기록을 할 수 있습니다. 예를 들어, 아이폰,이 기간 내에 소프트웨어 응용 프로그램을 사용하여 무료 월 재판은, "장치 검사 (DeviceCheck)"전화 상태가 "상태 A"로 기록. 시험 기간이 끝나면, 사용자는 무료 소프트웨어의 사용을 중지, "장치 체크 (DeviceCheck)"을 기록 장치의 현재 것 "을 상태 B '이다. 단지이 식별자는 응용 프로그램 샌드 박스를 제거 할 경우 이에 앞서,만큼 삭제하는 사용자 나 아이폰 소프트웨어 초기화,이 상태에서 전화가 다시 소프트웨어를 사용하는 경우 시스템에 의해 삭제 된 모든를 제공합니다 전화가 표시됩니다 상태 집행 유예의 초기 사용. 그래서 정말 레코드의 상태를 개발할 수있는 방법이 없습니다. DeviceCheck이 로고는 전화가 소프트웨어 또는 초기화 작업, 각종 상태 데이터 연결 애플 서버가 전화를 할 수 있습니다 확인 DeviceCheck 장비 검사 절차를 제거 할 경우에도 서버에 사과입니다. 그것은,이 문제에 대한 좋은 해결책이 될 수있는 평가판 소프트웨어 다시 곤경에 전화를 피하기 위해.

  그러나 문제는 중고 아이폰 휴대 전화를 다시했다. 상관없이 무료 체험 기간 종료 후 소프트웨어의 초기 사용, 만 새로운 사용자는 다시 전화를 사용하는 새로운 소유자에 대한 우대 조건을 즐길 수 없습니다되지 않습니다. 심지어 아이폰 초기화하는 경우, 전화, 데이터를 저장 전송하고 판매 및 사용은 아이폰의 상태를 변경하지 않습니다 기본 설정됩니다.

 

FCUUID

 

  우리가 잘 DeviceCheck하여 장치의 고유 식별자를 기록 할 수 있지만, 이것은 제한된 iOS11 후,이 분명 충분하지 않습니다이다. 를 표시 할 수있는 방법이 있습니까? 으로 FCUUID .

  FCUUID 그, 그래서 사용자가 휴대 전화의 전체 내용을 지울 때,이 고유하게 변경 키 체인 (열쇠 고리)에 저장된 특정 식별자를 달성하기를 통해 발생뿐만 아니라 대부분의 앱 사용 시나리오를 충족 확인 . 동일한 FCUUID에서 공유, 즉 같은 다른 응용 APPGROUP에서 동일한 식별자를 취득 할 수와 개발자 계정 간 앱 기일 수있다. 또한도 FCUUID 가능한 아이 클라우드는 정확성을 선별 제공하는 보조기구를 사용한다.

  GitHub의에 설명 된 방법을 사용하여, 여기에서 제공하는 몇 가지 방법은 다음과 같습니다 :

// 각각 실행되는 응용 프로그램이 변경됩니다 
+ (있는 NSString * ) UUID를; 

//은 각 시간 (NO 지속적를) 변경,하지만 android.permission을 유지하기위한 더 많은 임시 메모리의 UUID 
+ (있는 NSString *) :( uuidForKey ID <NSCopying> ) 키; 

/ / 응용 프로그램을 실행할 때마다 변경해야 
+ (있는 NSString * ) uuidForSession; 

// 재설치가 될 때 
+ (있는 NSString * ) uuidForInstallation이; 

// 무거운 장비를 하역 한 후이됩니다 
+ (있는 NSString *이 ) uuidForVendor; 

// 아이폰을 삭제 고유 식별 때 적합 변경한다 
+ (는 NSString *) uuidForDevice;

  

 

광고 식별자 [주의]

  除了上面两个方法外,也可以通过广告标识符来实现标记设备。但是如果使用广告标识符,则需要在上架审核的时候在相关广告标识符的问题中如实回答,否则可能会导致app审核被拒。

  作用域:所有App共享同一个标识符,即设备上所有的app获取的广告标识符为同一个。

[[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];

  而且在使用中,也有两个问题需要注意,一个是用户可以在 通用设置->隐私->广告->重置广告id,这就导致了广告标识符发生了变化,而第二个就是可能会有用户在隐私设置里“限制广告追踪”,这就导致了广告标识符被禁掉了,所以需要注意一下。

 

추천

출처www.cnblogs.com/gaoxiaoniu/p/11793333.html