Firebaseでアプリの計測をしようとしています。
ある画面で、以下のようにコードを書きました。setScreenName
関数で新しいスクリーン名を定義しています。
Swift
1import UIKit 2import Firebase 3 4class Section1121: UIViewController { 5 6 override func loadView() { 7 super.loadView() 8 Analytics.setScreenName("ケース1.1.2.1", screenClass: "Section1121") 9 } 10 11 override func viewDidAppear(_ animated: Bool) { 12 super.viewDidAppear(true) 13 14 // Do any additional setup after loading the view. 15 Analytics.logEvent(AnalyticsEventAddToCart, parameters: nil) 16 } 17 18 override func didReceiveMemoryWarning() { 19 super.didReceiveMemoryWarning() 20 // Dispose of any resources that can be recreated. 21 }
想定していたイベント発火の順番は以下です。
1: この画面に遷移すると、まずFirebaseがデフォルトで計測しているscreen_view
イベントが記録される。新しいスクリーン名はまだ反映されていない。
2: setScreenName
関数が発火し、新しいスクリーン名が記録される。
3: logEvent
関数が発火し、add_to_cart
イベントが新しいスクリーン名で記録される。
しかし、DebugViewを見てみると、順番が1->3->2になることがあります。このとき、2が最後になってしまうので、3で発火したadd_to_cart
イベントには新しいスクリーン名がひも付かず困っています。
コードではsetScreeName
の発火タイミングが前になるようにしているのですが、なぜ順番が入れ替わってしまうのでしょうか?

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。