【发布时间】:2021-04-24 00:16:26
【问题描述】:
我最近在我的 SwiftUI 应用中安装了 Firebase Analytics。除了自动屏幕视图外,一切都很好。我是否有义务为要跟踪的每个视图调用 AnalyticsEventScreenView?
【问题讨论】:
标签: firebase swiftui firebase-analytics
我最近在我的 SwiftUI 应用中安装了 Firebase Analytics。除了自动屏幕视图外,一切都很好。我是否有义务为要跟踪的每个视图调用 AnalyticsEventScreenView?
【问题讨论】:
标签: firebase swiftui firebase-analytics
是的 - 由于 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()
}
}
【讨论】: