Danny의 iOS 컨닝페이퍼
article thumbnail

앱 추적 투명성(App Tracking Transparency)

iOS +14.5부터 도입된 개인 정보 보호 관련 기능입니다.

앱에서 자신의 정보를 수집하거나 추적할 여부를 사용자에 물어보는 기능입니다.

 

iOS +14.5 부터, ATT(App Tracking Transparency)가 도입되서 사용자가 추적을 허락할 때만,

광고 추적 식별자인 IDFA(Identifier for Advertisers)를 이용할 수 있게 됬습니다.

 

여기서, 광고 추적 식별자 IDFA(Identifier for Advertisers)는 사용자에게 맞춤형 광고를 보여주는 기능입니다.

자세한 내용은 공식 문서 를 참고해주세요.

 

 

앱 추적 권한 요청하기

먼저, info.plist에서 권한 요청 설정을 해줘야 합니다.

 

구현하기

참고로 추적 권한 요청은 앱 실행 시, 오직 한번만 요청할 수 있습니다.

설정을 수정하려면 앱 설청창에서 직접 수정해줘야 합니다.

import AppTrackingTransparency  // 앱 추적 투명성 제공
import AdSupport                // 광고 식별자 권한 제공

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        
        // 앱 실행 시, 추척 권한 요청이 나타나지 않는 문제가 발생 (asyncAfter를 통해 지연)
        DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
            // 사용자에게 추적 권한을 요청합니다.
            ATTrackingManager.requestTrackingAuthorization { status in
                switch status {
                case .authorized:
                    print("Authorized, 사용자가 추적을 허용 함")
                    
                    // 사용자가 추적을 허용을 했으므로, IDFA를 사용 가능 함
                    print(ASIdentifierManager.shared().advertisingIdentifier)
                case .denied:
                    print("Denied, 사용자가 추적을 거부 함")
                case .notDetermined:
                    print("Not Determined, 추적 권한 요청이 나타나지 않음")
                case .restricted:
                    print("Restricted, 추적 권한 요청이 제한 됨")
                @unknown default:
                    print("Unknown")
                }
            }
        }
        
        return true
    }
}

 

 

참고

https://ios-development.tistory.com

https://velog.io/@minji0801

 

 

 

반응형
profile

Danny의 iOS 컨닝페이퍼

@Danny's iOS

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!