我正在嘗試將 ATTrackingManager 添加到 IOS 專案中,我不是 Swift 開發人員,所以一步一步地使用了一些檔案,理論上我做的一切都是正確的,但應用程式仍然崩潰。
所以基本上我做了這樣的事情:
func handleTrackingAuth() {
if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .notDetermined:
print("ATTrackingManagerAuthorizationStatusNotDetermined", status)
break
case .restricted:
print("ATTrackingManagerAuthorizationStatusRestricted", status)
break
case .denied:
print("ATTrackingManagerAuthorizationStatusDenied", status)
break
case .authorized:
print("ATTrackingManagerAuthorizationStatusAuthorized", status)
break
@unknown default:
print("ATTracking no data", status)
break
}
}
}
}
并將其添加到applicationDidBecomeActive部分。
然后我用正確的密鑰更新了我的 GoogleService-Info.plist:
<key>NSUserTrackingUsageDescription</key>
<string>This app needs permission to track you across apps and websites owned by 3rd parties.</string>
但仍然應用程式因錯誤而崩潰
此應用程式已崩潰,因為它試圖在沒有使用說明的情況下訪問隱私敏感資料。應用程式的 Info.plist 必須包含一個 NSUserTrackingUsageDescription 鍵和一個字串值,向用戶解釋應用程式如何使用這些資料。
我認為也許 Xcode 沒有重繪 檔案,所以我清理了構建檔案夾并重新啟動了 Xcode,但仍然得到同樣的錯誤。有誰知道為什么它沒有檢測到添加了密鑰?

uj5u.com熱心網友回復:
對于NSUserTrackingUsageDescription,型別應該是string。
在影像中,型別顯示一個陣列。它應該是一個字串。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/483966.html
