在 iOS 14 上请求跟踪授权总是返回“拒绝”

Posted

技术标签:

【中文标题】在 iOS 14 上请求跟踪授权总是返回“拒绝”【英文标题】:Requesting tracking authorization on iOS 14 always returns "denied" 【发布时间】:2021-01-25 17:16:09 【问题描述】:

我正在尝试测试 ios 14 跟踪弹出窗口。当我在模拟器上测试它时它会显示出来,但不是在真实设备上(iOS 14.3)。

我已经阅读了这篇文章 (IDFA iOS14 returns denied without displaying auth popup)。但是打开跟踪选项并不能解决我的问题。

我确定:

在 Info.plist 中提供目的字符串 (NSUserTrackingUsageDescription) 实际调用ATTrackingManager.requestTrackingAuthorization(completionHandler:) 跟踪(首选项 > 隐私 > 跟踪)已打开

但我在运行应用程序时没有收到提示。 completionHandler 会立即以 .denied 的情况调用。 此外,该应用甚至没有出现在使用跟踪的应用列表中(首选项 > 隐私 > 跟踪)。

【问题讨论】:

您是否在“允许应用请求跟踪”关闭时运行您的应用?自从您打开该开关后,您是否从设备中删除了您的应用并重新安装了它? 关机时运行,开机时运行,又多次删除重装。 我在这里回答是因为这不是解决方案。但是这个问题发生在我们几个人身上,我已经发现了几个帖子,其中发生了同样的事情,在设备中它不起作用,在模拟器中是的:developer.apple.com/forums/thread/671623 【参考方案1】:

问题在于操作系统,因此您必须将操作系统更新到 14.5.1

Apple 发布了 iOS 和 iPadOS 14.5.1。根据 Apple 的发布说明,此更新修复了 App Tracking Transparency 的错误,该错误可能会阻止某些用户接收来自应用的提示。

iOS 和 iPadOS 14.5.1 的发行说明

此更新修复了应用跟踪透明度的问题,其中一些 之前禁用了允许应用请求跟踪的用户 重新启用后,设置可能不会收到来自应用程序的提示。这 更新还提供重要的安全更新,建议用于 所有用户。

我将操作系统从 14.5 更新到 14.5.1,现在我在首次启动时收到 ATT 提示。

【讨论】:

以上是关于在 iOS 14 上请求跟踪授权总是返回“拒绝”的主要内容,如果未能解决你的问题,请参考以下文章

flutter ios 照片权限总是返回权限被永久拒绝

如何在离子科尔多瓦中添加用户跟踪授权

iOS 14 requestTrackingAuthorization 状态总是被拒绝

iOS 相机授权 - 错误状态

检查权限总是返回“拒绝”。反应原生

使用 IOS 13 编译的应用程序的 IOS14 跟踪权限