Mar*_*arc 4 google-analytics firebase google-analytics-firebase flutter firebase-analytics
在我将 firebase 分析实施到我的 flutter 应用程序中的过程中,我无法触发正确的事件,或者我不知道这应该如何工作。让我们使用以下代码:
firebaseAnalytics.setCurrentScreen(screenName: "Dashboard");
Run Code Online (Sandbox Code Playgroud)
当我触发此事件时,在 Firebase Analytics 调试视图中我看到:
当我通过以下方式自动触发屏幕更改时相同:
navigatorObservers: [
FirebaseAnalyticsObserver(analytics: appState.firebaseAnalytics),
],
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:为什么 Analytics 会打印“screen_view”而不是“Dashboard”或我在命名路由中的任何其他名称?
屏幕名称实际上已提交给 API 的内部工作,因为我在该位置调试了firebase_analytics.dart:
Future<void> setCurrentScreen(
{@required String screenName,
String screenClassOverride = 'Flutter'}) async {
if (screenName == null) {
throw ArgumentError.notNull('screenName');
}
await _channel.invokeMethod<void>('setCurrentScreen', <String, String>{
'screenName': screenName,
'screenClassOverride': screenClassOverride,
});
}
Run Code Online (Sandbox Code Playgroud)
回答我自己的问题并因此浪费赏金很难,但就是这样。以下是我的发现:
用户在 API 中提供的 screenName 被提交到 Firebase Analytics 仪表板,但您需要深入了解事件“screen_view”以查看您提供的实际点击屏幕名称。不幸的是,用户提供的 Name 不会显示在 Firebase Analytics 控制台的 debugView 中,这首先让我走错了路,认为它完全丢失了,这是错误的。
tl;dr : screenName 只是 screen_view 事件的一个参数,它就在 screen_view 事件中,你可以深入研究它。
| 归档时间: |
|
| 查看次数: |
810 次 |
| 最近记录: |