如何将 UniConsent CMP SDK 与 ATT(App Tracking Transparency)集成到 iOS 中

随着 iOS 14.5 的推出,App Tracking Transparency (ATT) 框架要求应用在访问用户的 IDFA(广告标识符)之前请求用户许可。这一透明度措施对于增强用户隐私至关重要,与 UniConsent 的同意管理功能完美契合。

ATT 要求在跨应用和网站追踪之前获取用户的明确同意。这与 UniConsent 的 CMP 无缝配合,确保符合 GDPR 和 CCPA 等隐私法规。以下是将 ATT 集成到 iOS 应用中的方法:

  • ATT 弹窗集成:使用 AppTrackingTransparency 在收集 IDFA 之前向用户请求追踪授权。

  • CMP 同步:确保 UniConsent CMP 与 ATT 框架保持一致地处理同意偏好,特别是在追踪权限被拒绝时。您可以在必要时自动检查同意状态。

此集成通过同时遵守 ATT 的追踪要求和 UniConsent 的同意管理来实现合规,从而提供流畅的用户体验。

前提条件

  • 支持移动应用的 UniConsent CMP 计划
  • iOS >= 14.5(用于 ATT 集成)
  • UniConsent CMP SDK 软件包(请联系支持团队获取)

快速开始

ATT 需要更新您的 info.plist 文件,添加 NSUserTrackingUsageDescription 键来说明追踪的目的。

请求 ATT 权限

在您的应用中,使用 ATT 框架提示用户授予追踪权限。此请求应在展示广告或使用追踪技术之前进行。

@available(iOS 14, *)
import AppTrackingTransparency

func requestTrackingPermission() {
    ATTrackingManager.requestTrackingAuthorization { status in
        // Handle the result
        switch status {
        case .authorized:
            print("Tracking authorized")
        case .denied, .notDetermined, .restricted:
            print("Tracking not authorized")
        @unknown default:
            break
        }
    }
}

处理同意数据

为确保正确处理同意,请按照 UniConsent SDK 中的标准步骤操作。这可以确保符合 UniConsent 的法律同意要求。

if #available(iOS 14, *) {
    self.requestAppTrackingTransparencyPermission()
}

此方法确保同时符合 ATT 和 UniConsent CMP 的要求,实现全面的隐私管理。

注意事项

  • 如果用户想要更改 ATT 决定,可以通过调用以下方法实现:
if let appSettings = NSURL(string: UIApplication.openSettingsURLString) {
  UIApplication.shared.open(appSettings as URL, options: [:], completionHandler: nil)
}

这将引导用户进入您应用的特定设置页面,用户可以在此更改设置。