是否需要向所有 iOS 用户显示 ATT 提示,还是只对 iOS 14.5+ 用户显示?

Apple 尚未澄清这一点,但我们目前的理解是,仅对 iOS 14.5 及更高版本的用户强制推送 ATT。

此外,在此博客文章中,Adjust 提供了以下有用的见解:

我们发现,如果您引用 ATT 但仅在 OS 14.5+ 中征求同意,则审阅人可能会在第一次拒绝您,因为他们希望在所有操作系统上征得同意。如果您随后重新提交的信息表明仅在 OS 14.5+上显示同意,则才会获得批准。为了节省时间,建议您将此备注添加到原始 app 提交信息中。

如果您只想向 14.5 或更高版本的用户显示此提示,则可以与您的开发人员一起根据版本号来设置此条件,如下面的示例代码所示:

if #available(iOS 14.5, *) {
            if ATTrackingManager.trackingAuthorizationStatus == .notDetermined || ATTrackingManager.trackingAuthorizationStatus == .authorized {
                Branch.getInstance().dispatch {
                    self.requestIDFAPermission()
                }
            }
        }
    //MARK: SKAdNetwork ATT Prompt
    // Request IDFA Permission
    func requestIDFAPermission() {
        if #available(iOS 14.5, *) {
            let semaphore = DispatchSemaphore(value: 0)
            DispatchQueue.main.async {
                ATTrackingManager.requestTrackingAuthorization { status in
                    print("IDFA Permissions Status")
                    switch status {
                    case .authorized:
                        print("Authorized")
                        print(ASIdentifierManager.shared().advertisingIdentifier)
                        self.branchParameters = NSDictionary(dictionary: ["IDFA" : ASIdentifierManager.shared().advertisingIdentifier])
                    case .denied:
                        print("Denied")
                        self.branchParameters = NSDictionary(dictionary: ["IDFA" : "Denied"])
                    case .notDetermined:
                        print("Not Determined")
                        self.branchParameters = NSDictionary(dictionary: ["IDFA" : "Not Determined"])
                    case .restricted:
                        print("Restricted")
                        self.branchParameters = NSDictionary(dictionary: ["IDFA" : "Restricted"])
                    @unknown default:
                        print("Unknown")
                        self.branchParameters = NSDictionary(dictionary: ["IDFA" : "Unknown"])
                    }
                    semaphore.signal()
                }
            }
            semaphore.wait()
        }
    }

5个月前更新



是否需要向所有 iOS 用户显示 ATT 提示,还是只对 iOS 14.5+ 用户显示?


建议的编辑仅限于 API 参考页

您只能建议对 Markdown 正文内容进行修改,而不能建议对 API 说明进行修改。