동의 구현
모바일 앱에서 동의를 구현하는 방법을 알아봅니다.
Adobe Experience Platform 동의 모바일 확장을 사용하면 Adobe Experience Platform Mobile SDK 및 Edge Network 확장을 사용할 때 모바일 앱에서 동의 환경 설정을 수집할 수 있습니다. 설명서에서 동의 확장에 대해 자세히 알아보세요.
전제 조건
- SDK가 설치 및 구성된 앱을 빌드하고 실행했습니다.
학습 목표
이 단원에서는 다음 작업을 수행합니다.
- 사용자에게 동의를 묻는 메시지를 표시합니다.
- 사용자 응답을 기반으로 확장을 업데이트합니다.
- 현재 동의 상태를 가져오는 방법을 알아봅니다.
동의 요청
처음부터 자습서를 따랐다면 동의 확장에 있는 기본 동의를 보류 중 - 사용자가 동의 환경 설정을 제공하기 전에 발생하는 큐 이벤트로 설정했음을 기억할 수 있습니다.
데이터 수집을 시작하려면 사용자의 동의를 받아야 합니다. 실제 앱에서는 지역에 대한 동의 모범 사례를 참조해야 합니다. 이 자습서에서는 경고를 사용하여 요청하기만 하면 사용자의 동의를 받습니다.
-
사용자에게 동의를 한 번만 요청하려고 합니다. 이렇게 하려면 Mobile SDK 동의와 Apple의 앱 추적 투명도 프레임워크를 사용한 추적에 필요한 권한 부여를 결합하여 수행할 수 있습니다. 이 앱에서는 사용자가 추적 권한을 부여할 때 이벤트 수집에 동의한다고 가정합니다.
-
Xcode 프로젝트 탐색기에서 Luma > Luma > Utils > MobileSDK(으)로 이동합니다.
이 코드를
updateConsent
함수에 추가합니다.code language-swift // Update consent let collectConsent = ["collect": ["val": value]] let currentConsents = ["consents": collectConsent] Consent.update(with: currentConsents) MobileCore.updateConfigurationWith(configDict: currentConsents)
-
Xcode의 Project 탐색기에서 Luma > Luma > Views > General > DisclaimerView(응용 프로그램을 설치 또는 다시 설치하고 앱을 처음 시작한 후 표시되는 보기)로 이동합니다. Apple의 앱 추적 투명도 프레임워크에 따라 추적을 승인하라는 메시지가 표시됩니다. 사용자가 권한을 부여하면 동의도 업데이트됩니다.
ATTrackingManager.requestTrackingAuthorization { status in
닫기에 다음 코드를 추가합니다.code language-swift // Add consent based on authorization if status == .authorized { // Set consent to yes MobileSDK.shared.updateConsent(value: "y") } else { // Set consent to yes MobileSDK.shared.updateConsent(value: "n") }
현재 동의 상태 가져오기
동의 모바일 확장은 현재 동의 값을 기반으로 추적을 자동으로 억제/보류/허용합니다. 현재 동의 상태에 직접 액세스할 수도 있습니다.
-
Xcode의 Project 탐색기에서 Luma > Luma > Utils > MobileSDK(으)로 이동합니다.
getConsents
함수에 다음 코드를 추가합니다.code language-swift // Get consents Consent.getConsents { consents, error in guard error == nil, let consents = consents else { return } guard let jsonData = try? JSONSerialization.data(withJSONObject: consents, options: .prettyPrinted) else { return } guard let jsonStr = String(data: jsonData, encoding: .utf8) else { return } Logger.aepMobileSDK.info("Consent getConsents: \(jsonStr)") }
-
Xcode의 Project 탐색기에서 Luma > Luma > Views > General > HomeView(으)로 이동합니다.
.task
한정자에 다음 코드를 추가합니다.code language-swift // Ask status of consents MobileSDK.shared.getConsents()
위의 예에서는 단순히 동의 상태를 Xcode의 콘솔에 로깅하는 것입니다. 실제 시나리오에서는 이를 사용하여 사용자에게 표시되는 메뉴나 옵션을 수정할 수 있습니다.
Assurance를 사용한 유효성 검사
- 장치 또는 시뮬레이터에서 애플리케이션을 삭제하여 추적 및 동의를 올바르게 재설정하고 초기화합니다.
- 시뮬레이터 또는 장치를 Assurance에 연결하려면 설치 지침 섹션을 검토하십시오.
- 앱에서 홈 화면에서 제품 화면으로 이동하고 홈 화면으로 다시 이동하면 Assurance UI에 동의 가져오기 이벤트가 표시됩니다.
다음: 라이프사이클 데이터 수집