iOS 앱 권한 팝업
앱 사용자들로부터 추적 권한을 좀 더 용이하게 받기 위해 사전 권한 팝업을 사용합니다. 해당 팝업은 앱에서 애플 앱 추적 투명성(ATT) 동의 팝업을 호출하기 전에 표시되도록 설계되었으며, 사용자들의 권한 동의를 최적화할 수 있도록 애플 ATT 동의 팝업으로 자연스럽게 연결되는 UI를 제공합니다.
아이언소스 사전 권한 팝업은 반드시 애플 ATT 동의 팝업 구동 이전에 사용해야 합니다. 이는 사용자가 앱 추적에 동의하는 결정을 내리기 전에 앱 추적으로 얻을 수 있는 장점을 전달하는 데 도움이 됩니다.
팝업 표시 시기
사용자의 앱 추적 허가 상태가 NotDetermined이며 아이언소스 SDK 초기화가 완료된 경우 사전 권한 팝업을 호출합니다. iOS 14 이상 버전 사용자에게만 팝업을 표시하는 것이 좋습니다.
팝업 관련 주의 사항
- 표시 문구는 고정이며 변경은 할 수 없습니다.
- 사전 권한 팝업은 애플 앱 추적 투명성 동의 팝업 요청 API인 requestTrackingAuthorizationWithCompletionHandler 실행 이전에 표시되어야 하며 ATT 동의 팝업의 표시 자체를 막아서는 안됩니다.
- 앱의 리뷰 노트에 ATT 처리 구현 사항에 대한 설명을, 특히 ATT 동의 팝업 요청이 사전 권한 팝업 표시에 종속적이지 않음을 강조하여 기입해 주는 것이 좋습니다.
- 만약 다른 규제 관련 동의 팝업을 사용 중이라면 (GDPR, COPPA 등), 사전 권한 팝업의 문구가 다른 동의 팝업의 문구 내용과 어긋나는 내용이 없는지 확인합니다.
권한 팝업 API 및 포스트백 활성화 방법
- 아이언소스 SDK 7.0.4 이상 버전이 연동되어 있어야 합니다.
- ConsentView 대리자(delegate)들을 등록합니다.
- 팝업 API 및 포스트백들을 추가합니다.
1단계: 아이언소스 SDK 연동
아이언소스 SDK 7.0.4 이상 버전을 연동합니다.: iOS | 유니티, 1.0.0+: Flutter | React Native
2단계: ConsentView 대리자(delegate)들을 등록
아이언소스 SDK는 팝업 상태와 사용자의 응답 정보를 전달하기 위해 포스트백을 발송합니다. 아이언소스 SDK 초기화 이전에 ConsentView 포스트백을 등록하면 됩니다.
IronSourceEvents.onConsentViewDidAcceptEvent += onConsentViewDidAcceptEvent;
IronSourceEvents.onConsentViewDidFailToLoadWithErrorEvent += onConsentViewDidFailToLoadWithErrorEvent;
IronSourceEvents.onConsentViewDidLoadSuccessEvent += onConsentViewDidLoadSuccessEvent;
IronSourceEvents.onConsentViewDidFailToShowWithErrorEvent += onConsentViewDidFailToShowWithErrorEvent;
IronSourceEvents.onConsentViewDidShowSuccessEvent += onConsentViewDidShowSuccessEvent;
리스너 등록이 완료되면, 아래의 이벤트들에 대한 알림을 수신할 수 있습니다. 아이언소스 사전 권한 팝업을 화면에 표시할 때 반드시 모든 API 및 콜백들에 대해 consentViewType이 “pre”로 지정되었는지 확인해 주세요.
상태 불러오기 및 표시
// Consent View was loaded successfully
private void onConsentViewDidShowSuccessEvent(string consentViewType)
{
}
// Consent view was failed to load
private void onConsentViewDidFailToShowWithErrorEvent(string consentViewType, IronSourceError error)
{
}
// Consent view was displayed successfully
private void onConsentViewDidLoadSuccessEvent(string consentViewType)
{
}
// Consent view was not displayed, due to error
private void onConsentViewDidFailToLoadWithErrorEvent(string consentViewType, IronSourceError error)
{
}
// The user pressed the Settings or Next buttons
private void onConsentViewDidAcceptEvent(string consentViewType){
}
예제:
// The user pressed the Settings or Next buttons
IronSource.Agent.onConsentViewDidAcceptEvent("pre")
3단계: 팝업 API 및 포스트백들을 추가
아래의 절차를 따라 아이언소스 권한 팝업을 표시합니다. 팝업은 반드시 SDK의 초기화 과정이 완료된 후 로드되어야 합니다.
- API 메서드인 loadConsentView를 사용하여 알맞는 consentViewType으로 팝업을 로드합니다.
IronSource.Agent.loadConsentViewWithType("pre");
- 팝업 로드가 완료되면, showConsentView API 메서드를 통해 팝업을 표시할 수 있습니다. 사용자의 허가 상태를 확인하여 과정을 최적화 하세요.
IronSource.Agent.showConsentViewWithType("pre");