개발

iOS 14.5 부터 변경될 IDFA 수집에 관한 정책 정리

소소ing 2021. 3. 16. 17:15
반응형

iOS 앱에서 오퍼월 광고 및 광고 효율 추척을 위해 사용하던 광고ID 값인 IDFA를 수집하기 위해서 앞으로는 사용자의 권한을 필수로 받아야 한다. 

iOS 14.5 이전 버전에서는 별도의 사용자 승인없이 IDFA를 수집할수 있었으나 iOS 14.5 이상 부터는 IDFA를 수집하기 위해서는 필수로 권한을 받아야 한다. 

 

기존 IDFA를 가져오기 위해서는 AdSupport 프레임워크를 통해 아래 코드로 수집이 가능했었다. 

import AdSupport

ASIdentifierManager.shared().advertisingIdentifier

 

하지만 위 코드로 IDFA를 수집하려면 AppTrackingTranparency 프레임워크를 통해 추가로 팝업을 요청해 주어야 한다. 

그럼 IDFA 권한 승인을 위한 팝업을 요청하는 방법을 알아보자!

1. AppTrackingTranparency import 시키기 

import AppTrackingTransparency

 

2. iOS 14 이상에서만 권한 팝업을 노출 시키도록 코드 설정

if #available(iOS 14, *) {

    ATTrackingManager.requestTrackingAuthorization { (status) in

        switch status {

              case .authorized: print("authorized")

              case .denied: print("denied")

              case .notDetermined: print("notDetermined")

              case .restricted: print("restricted")

              default: break

          }

     }

}

 

3. info.plist에서 NSUserTrackingUsageDescription 항목을 정의 

<key>NSUserTrackingUsageDescription</key>

<string>앱이 타겟광고게재 추적 목적으로 IDFA에 접근하려고 합니다.</string>

 

위와 같이 코드를 정의 하면 2번 항목 코드가 호출되는 시점에서 아래와 같이 권한 요청 팝업이 출력된다.

 

 

 

위 권한 요청 팝업은 앱 설치 후 딱 1번만 호출되기 때문에 앱에 추적 금지 요청을 한 사용자에게 다시 허용을 받으려면 아래 카카오페이지에서 구현한 방법과 같이 별도 팝업을 작성한 후 앱의 설정으로 이동하도록 구현해야 한다. 

설정으로 이동하면 아래 이미지와 같이 광고 추척 부분의 스위치를 볼수 있으며 해당 스위치를 사용자가 활성화를 할 경우 위에서 노출한 허용과 동일한 효과를 볼 수 있다.

 

또한 추가적으로 IDFA 권한을 허용할 수 있도록 앱에서 사용자 동의를 받기 위한 최적의 플로우를 구현하도록 가이드 하는 링크를 기입한다.

 

iOS 14에서 데이터 수집에 대한 동의 받기: 애드저스트가 제공드리는 팁 | Adjust

다가오는 iOS 14 데이터 프라이버시 정책 변화에 대비하기 위해 사용자의 정보 제공 동의를 얻을 수 있도록 하는 효과적인 UX 전략을 세우는 팁과 요령을 알려드립니다.

www.adjust.com

반응형