簡體   English   中英

加載 GoogleTagManager 容器時 iOS 應用程序崩潰

[英]iOS App Crashes while it is loading the GoogleTagManager Container

我需要在我的 iOS 應用程序中為 GoogleAnalytics 實施 Firebase+Google 標簽管理器。

我通過為 GoogleTagManager 和 Firebase/Core 安裝最新版本的 pod,在一個空白的 iOS 項目上嘗試了 POC。 POC 工作正常,我能夠發送事件並且事件被記錄到服務器上的 GA。

但是,當我安裝最新版本的 GTM 和 Firebase/Core 時,同樣的 GoogleServices-info.plist,同樣的 GTM-XXXXXXX.json,我發現我的應用程序崩潰了,我可以看到“GoogleTagManager info: Loading container: GTM-XXXXXXX”我的控制台中的最后一行。

Removing GoogleInterchangeUtilities
Downloading dependencies
Installing Firebase 4.3.0 (was 3.7.1)
Installing FirebaseAnalytics 4.0.4 (was 3.4.4)
Installing FirebaseCore 4.0.8 (was 3.4.3)
Installing FirebaseInstanceID 2.0.4 (was 1.0.9)
Using GoogleAnalytics (3.17.0)
Using GoogleSymbolUtilities (1.1.2)
Installing GoogleTagManager 6.0.0 (was 5.0.8)
Installing GoogleToolboxForMac (2.1.3)
Using GoogleUtilities (1.3.2)
Installing nanopb (0.3.8)

當我刪除 GoogleTagManager 並只保留 FirebaseAnalytics 時,應用程序運行良好,Firebase Analytics 正在服務器上接收事件。

通過不同論壇和堆棧溢出的不同線程,我嘗試將 GTM 和 Firebase 降級到 GoogleTagManager -v5.0.8 和 Firebase/Core -v3.7.1 和 FirebaseAnalytics。 請注意,我沒有提到 FirebaseAnalytics 的任何首選版本。 令我驚訝的是,我的應用程序開始工作並且沒有在任何地方中斷。 但是,現在我看到 Firebase 事件正在觸發,但 GA 沒有收到任何事件。 此外,我在控制台中看到事件的參數被傳遞為 null。

GoogleTagManager info: Processing logged event: gtm.load with parameters: (null)

Pod 安裝日志 -

Downloading dependencies
Installing Firebase 3.7.1 (was 4.3.0)
Installing FirebaseAnalytics 3.4.4 (was 4.0.4)
Installing FirebaseCore 3.4.3 (was 4.0.8)
Installing FirebaseInstanceID 1.0.9 (was 2.0.4)
Using GoogleAnalytics (3.17.0)
Installing GoogleInterchangeUtilities (1.2.2)
Using GoogleSymbolUtilities (1.1.2)
Installing GoogleTagManager 5.0.8 (was 6.0.0)
Using GoogleUtilities (1.3.2)

我不確定我的應用程序出了什么問題。 哪個庫與 Firebase 或 GoogleTagManager 沖突? 相同的設置在空白項目上運行良好。

我的應用程序使用其他一堆手動添加的其他框架(不是通過 Cocoapods) - AWS Frameworks、CyptoSwift、DropDown、Timberjack、Alamofire、Charts、Gloss、SwiftValidator、SwiftyJSON、SDWebImage、AWSFacebookSignIn、AWSGoogleSignIn、Blots、FBSDKCoreKit、FBSDKLoginKit、GoogleAppUtilities 、GoogleAuthUtilities、GoogleNetworkUtilities、GoogleSignin、SafariServices。

希望這有助於確定沖突(如果有)。

我說沖突的原因是因為最新版本的 GoogleTagManager 和 Firebase 在我使用相同的 GoogleServices-info.plist 和 GTM-XXXXXXX.json 文件所做的空白應用程序 POC 中運行良好。 此外,當我降級 GTM 和 Firebase 的版本時,該應用程序可以工作,但在這種情況下,GA 停止接收事件。

控制台日志:

10 月 17 日 09:39:30 XX-Shell[88944]:[Firebase/Core][I-COR000005] 尚未配置任何應用。

10 月 17 日 09:39:30 XX-Shell[88944]:[Firebase/Analytics][I-ACS024000] 調試模式已開啟

10 月 17 日 09:39:30 XX-Shell[88944]:[Firebase/Analytics][I-ACS023008] 要禁用調試日志記錄,請設置以下應用程序參數:-noFIRAnalyticsDebugEnabled

10 月 17 日 09:39:30 XX-Shell[88944]:[Firebase/Analytics][I-ACS023009] 調試日志記錄已啟用

10 月 17 日 09:39:30 XX-Shell[88944]:[Firebase/Core][I-COR000005] 尚未配置任何應用。

2017-10-17 09:39:30.349 XX-Shell[88944:5891923] GoogleTagManager 信息:加載容器:GTM-XXXXXXX

initializingUserPool2017-10-17 09:39:30.352 XX-Shell[88944:5891910] GoogleTagManager 信息:嘗試從網絡加載容器 GTM-XXXXXXX

10 月 17 日 09:39:30 XX-Shell[88944]:[Firebase/Analytics][I-ACS025018] 事件未記錄。 調用+[FIRApp 配置]:gtmTrackEvent_screenView

Update: 26Oct2017

我發現了沖突的庫 - GoogleUtilities、GoogleNetworkingUtilities 和 GoogleSymbolUtilities。 我在我的 poc 中復制了所有與項目相關的框架,並且能夠復制該問題。 我開始一次刪除一個庫,並在這 3 個導致問題的庫上圈出(當它們在一起時)。 希望谷歌會調查這個問題並盡快更新。 我對實際項目的問題是,我有太多的子項目,我將不得不為所有子項目一起解決沖突(谷歌和其他)......這是一項乏味的任務,:)

有沒有辦法隔離可能發生沖突的地方,也許是通過刪除庫? 如果您可以從崩潰發生時獲得堆棧跟蹤,這也會有所幫助。

我認為問題可能來自 GTM 容器。 如果您更新了容器並更新了JSON ,這可能會影響應用程序。 嘗試刪除您更新的容器。 這可能會暫時解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM