如果使用了 App Tracking Transparency
蘋(píng)果要求在 iOS 14.5 及以上的版本中
必須 在彈框 取得用戶(hù)同意后, 才可以跟蹤用戶(hù)
否則會(huì)被拒, 拒絕原因如下:
Guideline2.1-InformationNeeded
在 iOS 14.5 之后
必須在 plist 中添加 這個(gè) Privacy - Tracking Usage Description 字段沙兰、
我寫(xiě)的值是:請(qǐng)放心肄满,開(kāi)啟權(quán)限不會(huì)獲取您在其他站點(diǎn)的隱私信息竞阐,該權(quán)限僅用于標(biāo)識(shí)設(shè)備并保障服務(wù)安全與提示瀏覽體驗(yàn)。
1扬蕊、添加 NSUserTrackingUsageDescription 聲明
打開(kāi) info.plist、右鍵選擇 Add Row眠蚂、
Key 填寫(xiě) Privacy - Tracking Usage Description
Value 簡(jiǎn)單描述收集用戶(hù)數(shù)據(jù)的理由骏掀、
例如 我的 APP 廣告 SDK 用來(lái)精準(zhǔn)投放廣告、
則填寫(xiě) “該標(biāo)識(shí)符將用于向您投放個(gè)性化廣告”卸夕、
2层释、在合適的位置調(diào)用 requestTrackingAuthorization(completionHandler:) 方法、
彈框請(qǐng)求 在合適的位置(例如didFinishLaunchingWithOptions方法中)
我的 APP 是在初始化廣告 SDK 時(shí)調(diào)用:
然后在 AppDelegate 中開(kāi)啟請(qǐng)求出現(xiàn)彈窗娇哆。代碼如下:
在iOS15 斷點(diǎn)調(diào)試湃累,發(fā)現(xiàn)在回調(diào)時(shí)候 ATTrackingManagerAuthorizationStatus 還是 ATTrackingManagerAuthorizationStatusNotDetermined
然后經(jīng)過(guò)一段時(shí)間發(fā)現(xiàn)大部分情況勃救,將權(quán)限申請(qǐng)放在 ```applicationDidBecomeActive 調(diào)用可以通過(guò)審核
其他小概率不通過(guò)的,可以嘗試下玄學(xué)延時(shí)方法 或者 進(jìn)行狀態(tài)循環(huán)檢測(cè)