首页 > 解决方案 > 您的应用包含 NSUserTrackingUsageDescription,表示您将请求跟踪用户的权限

问题描述

我添加了 Google Admob 框架,用于在应用程序中显示广告并在 iTunes 连接应用程序隐私部分中获取与用户跟踪使用相关的错误。iTunesConnect 不允许提交应用程序。之后,我在 info.plist 中有正确的密钥和描述。

<key>NSUserTrackingUsageDescription</key>
<string>App would like to access IDFA for tracking purpose</string>

并且还在登录页面添加了请求权限的代码,并在viewDidLoad中调用它。

    func requestPermission() {
    if #available(iOS 14, *) {
        ATTrackingManager.requestTrackingAuthorization { status in
            switch status {
            case .authorized:
                // Tracking authorization dialog was shown
                // and we are authorized
                print("Authorized")
                
                // Now that we are authorized we can get the IDFA
                print(ASIdentifierManager.shared().advertisingIdentifier)
            case .denied:
                // Tracking authorization dialog was
                // shown and permission is denied
                print("Denied")
            case .notDetermined:
                // Tracking authorization dialog has not been shown
                print("Not Determined")
            case .restricted:
                print("Restricted")
            @unknown default:
                print("Unknown")
            }
        }
    } else {
        // Fallback on earlier versions
    }
}

但是在上传新版本后,iTunesConnect 仍然没有出现错误,我无法提交版本。有人遇到过同样的事情吗?这个错误将如何隐藏>

在此处输入图像描述

标签: swiftadmob

解决方案


如果您正在为广告和/或第三方库收集用户数据,您只需要使用 info.plist 中的 NSUserTrackingUsageDescription 属性。

如果您将信息保留在您的应用程序中,或出于身份验证目的,则您不是在跟踪;因此,您不需要此属性。(我希望我已经正确解释了这一点。)

也就是说,您在 App Store Connect 的 App Privacy 部分提供的信息与 info.plist 中的 NSUserTrackingUsageDescription 属性不一致。


推荐阅读