最新項目是面向海外,所以使用一些海外版的SDK,把一些問題記錄下來,和大家一起分享。
一 AdjustSDK
https://dev.adjust.com/zh/sdk/ios/?version=v4
1.1 [Adjust]v: Response: {"timestamp":"2024-09-05T03:51:35.750Z+0000","message":"Session failed (request check interval failed (Ignoring too frequent session. Last session: 2024-09-05T03:36:02, this session: 2024-09-05T03:51:35, interval: 15m33s, min interval: 20m)) (app_token:x5gm47txl728 adid:29fcd808c0c1d018d4e1bc8f13ae8b49)","error":"Session failed (request check interval failed (Ignoring too frequent session. Last session: 2024-09-05T03:36:02, this session: 2024-09-05T03:51:35, interval: 15m33s, min interval: 20m)) (app_token:x5gm47txl728 adid:29fcd808c0c1d018d4e1bc8f13ae8b49)"}
首次安裝請求卸載太過頻繁 ,Adjust 要求是20分鐘的間隔。
1.2 {"app_token":"x5gm47txl728","adid":"29fcd808c0c1d018d4e1bc8f13ae8b49","timestamp":"2024-09-05T03:20:36.145Z+0000","message":"Attribution found","attribution":{"tracker_token":"unattr","tracker_name":"No User Consent","network":"No User Consent","state":"installed"}}
沒有追蹤權限導致。
跟蹤權限彈窗非常容易被其他權限彈窗覆蓋掉,導致無法追蹤,保證這個彈窗的時機,不被別的彈窗覆蓋,比如系統的網絡權限彈窗就會覆蓋這個###
Adjust SDK 收集的數據通常是在應用發布到 App Store 后才會開始有效。這是因為 Adjust SDK 主要用于跟蹤用戶行為、歸因和廣告效果,而這些功能依賴于真實用戶的交互和活動。
主要原因如下:
- 真實用戶數據:
○ 在應用發布到 App Store 后,用戶才會下載并使用應用,從而產生真實的使用數據。開發者在開發和測試階段通常不會有足夠的用戶數據來進行有效的分析。
- 歸因和跟蹤:
○ Adjust SDK 的核心功能是歸因,即確定用戶是通過哪個廣告或渠道下載應用的。這需要用戶在真實環境中與廣告互動,只有在應用上線后才能收集到這些信息。
- 測試環境:
○ 在開發和測試階段,您可以使用模擬器或測試設備進行一些基本的功能測試,但這些測試不會產生真實的歸因數據。Adjust 提供了一些測試工具和環境,但這些通常不反映真實的用戶行為。
- 數據延遲:
○ 即使在應用發布后,數據的收集和處理也可能需要一些時間。Adjust SDK 會在后臺收集數據,并在一定時間后將其發送到 Adjust 的服務器進行分析。
開發階段的建議
在開發和測試階段,您可以:
●使用測試設備:在真實設備上進行測試,以確保 SDK 正常工作。
●啟用調試模式:在 Adjust SDK 中啟用調試模式,以便在開發過程中查看日志和調試信息。
●模擬用戶行為:通過模擬用戶行為來測試 SDK 的功能,但請注意,這些數據不會反映真實的用戶行為。
二 FBSDK
https://developers.facebook.com/docs/app-events/getting-started-app-events-ios
Setter for 'isAdvertiserTrackingEnabled' is deprecated: The setAdvertiserTrackingEnabled flag is not used for FBSDK v17+ on iOS 17+ as the FBSDK v17+ now relies on ATTrackingManager.trackingAuthorizationStatus.
這個警告表示在iOS 17及更高版本上,Facebook SDK v17及更高版本不再使用setAdvertiserTrackingEnabled標志,而是依賴于ATTrackingManager.trackingAuthorizationStatus。因此,設置'isAdvertiserTrackingEnabled'屬性是過時的操作。您應該更新您的代碼以遵循新的SDK要求,并使用ATTrackingManager.trackingAuthorizationStatus來管理廣告跟蹤授權狀態。
https://developers.facebook.com/docs/app-events/guides/advertising-tracking-enabled/#guidance-for-fb-sdk-for-ios-17-0-0-or-later-versions
FBSDKLog: starting with Graph API v2.4, GET requests for /1188626909058252/ios_skadnetwork_conversion_config should contain an explicit "fields" parameter