【问题标题】:Using Firebase Analytics with SwiftUI将 Firebase 分析与 SwiftUI 结合使用
【发布时间】:2021-04-24 00:16:26
【问题描述】:

我最近在我的 SwiftUI 应用中安装了 Firebase Analytics。除了自动屏幕视图外,一切都很好。我是否有义务为要跟踪的每个视图调用 AnalyticsEventScreenView?

【问题讨论】:

    标签: firebase swiftui firebase-analytics


    【解决方案1】:

    是的 - 由于 SwiftUI 视图的结构方式,Analytics 只能看到 NotifyingMulticolumnSplitViewController

    您必须手动发送屏幕视图(如stated in the docs),如下所示:

    import SwiftUI
    import Firebase
    
    struct ContentView: View {
      var body: some View {
        NavigationView {
          List {
            NavigationLink(destination: OneView()) {
              Text("One")
            }
            NavigationLink(destination: TwoView()) {
              Text("Two")
            }
          }
          .navigationTitle("Choose a screen")
          .onAppear() {
            Analytics.logEvent(AnalyticsEventScreenView,
                               parameters: [AnalyticsParameterScreenName: "\(ContentView.self)",
                                            AnalyticsParameterScreenClass: "\(ContentView.self)"])
          }
        }
      }
    }
    
    struct ContentView_Previews: PreviewProvider {
      static var previews: some View {
        ContentView()
      }
    }
    
    import SwiftUI
    import Firebase
    
    struct OneView: View {
      var body: some View {
        Text("1")
          .onAppear() {
            Analytics.logEvent(AnalyticsEventScreenView,
                               parameters: [AnalyticsParameterScreenName: "\(OneView.self)",
                                            AnalyticsParameterScreenClass: "\(OneView.self)"])
          }
      }
    }
    
    struct OneView_Previews: PreviewProvider {
      static var previews: some View {
        OneView()
      }
    }
    

    【讨论】:

    • 感谢您的回复!我确实阅读了有关 Analytics 寻找下划线 UIViewController 的文档,但我想确保我没有遗漏任何东西。手动调用 AnalyticsEventScreenView 效果很好。
    猜你喜欢
    • 2022-11-17
    • 2012-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多