【问题标题】:Your app contains NSUserTrackingUsageDescription, indicating that you will request permission to track users您的应用包含 NSUserTrackingUsageDescription,表示您将请求跟踪用户的权限
【发布时间】:2020-12-28 14:47:01
【问题描述】:

我添加了 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 仍然没有出现错误,我无法提交版本。 有人遇到过同样的事情吗? 如何隐藏此错误>

【问题讨论】:

  • 您是否更新了新的隐私“产品页面预览”?这是新的简短隐私政策。听起来你需要更新它。由于您的“发布”按钮被禁用,我假设您没有这样做。它将显示“XX 天前由 XXXX 发布”
  • 是的@loremipsum bro 也已更新,请查看更新后的整个屏幕截图以了解隐私部分,并且仍然无法启用发布按钮。
  • 您是说没有收集数据,但同时您正在使用 IDFA。那就是收集。您自己可能无法获得 IDFA,但 AdMob 却可以。您必须根据 AdMob 隐私政策回答您的隐私问题。您的 UsageDescription 也说跟踪,但您的隐私政策说不,这是断开连接。您应对 AdMob 所做的一切负责。
  • 您可能需要仔细检查您的应用程序是否包含 Mac 版本。尽管它在我的应用程序中被关闭,但我发现它在 Pods Targets 中启用。
  • 感谢@loremipsum,我已经更改了隐私部分并选择了设备 ID 和第三方广告部分,现在我可以提交构建了。

标签: swift admob


【解决方案1】:

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

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

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

【讨论】:

  • 感谢您提供这些信息,但怎么会有人知道这一点?几个小时以来,我一直在与禁用的发布按钮作斗争。您是否有任何列出上述内容的文档的链接?
  • 更新:我的解决方案是返回并取消选中所有选项,然后一次将它们添加回我们收集的数据。
【解决方案2】:

问题在于“应用隐私”部分的设置方式。根据您的选择,我们确定您没有收集任何数据。

这是错误的,因为您使用的是 IDFA(广告标识符),因此您正在收集“标识符”。

您需要重新访问“应用隐私”并修改您的选择。

【讨论】:

    【解决方案3】:

    我收到类似的错误,“您的应用包含 NSUserTrackingUsageDescription,表明您将请求跟踪用户的权限。”。

    我从 info.plist 文件中删除了 NSUserTrackingUsageDescription,并在新版本中删除了 UMP 库以及所有相关内容。

    并且所有的 Admob 请求都有 [GADMobileAds.sharedInstance.requestConfiguration tagForChildDirectedTreatment:YES];

    但是 Appstoreconnect 不断给出同样的错误。似乎 appsstoreconnect 正在检查所有构建,即使它们没有被使用。

    【讨论】:

    • 您找到解决方案了吗?我遇到了类似的问题,即已发布的应用程序版本使用 NSUserTrackingUsageDescription,但我尝试发布的新版本没有。无法更新应用隐私,因为它说我仍在使用该密钥。
    • 不,我没有解决办法。
    【解决方案4】:

    你必须指定你想使用 NSUserTrackingUsageDescription 的原因 此应用希望使用它来获得更好的性能

    【讨论】:

    • 他已经做了 NSUserTrackingUsageDescriptionApp 想要访问 IDFA 进行跟踪
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-03
    • 1970-01-01
    • 1970-01-01
    • 2012-05-11
    • 2012-02-02
    • 1970-01-01
    • 2022-11-10
    相关资源
    最近更新 更多