【问题标题】:Firebase Analytics in Flutter when using StoreConnector to display new screen使用 StoreConnector 显示新屏幕时 Flutter 中的 Firebase Analytics
【发布时间】:2020-12-08 14:07:25
【问题描述】:

我正在尝试将 Flutter 中的 Firebase Analytics 添加到我的小部件中,但我正在使用 StoreConnector 显示 2 个不同的屏幕 Alpha 和 Beta。如何使用分析来跟踪屏幕变化?

class MyWidgetPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return StoreConnector<AppState, MyViewModel>(
      converter: (store) => myViewModel.create(store),
      builder: (context, viewModel) {
        return _body(context, viewModel);
      },
    );
  }

  _body(BuildContext context, MyViewModel viewModel) {
    if (viewModel.withLoading) return _loading();
    if (viewModel.withAlphaContent) return _contentAlpha(context, viewModel);
    if (viewModel.withBetaContent) return _contentBeta(context, viewModel);
    if (viewModel.withRetry) return _retry(context);
  }

...

}

【问题讨论】:

    标签: flutter screen firebase-analytics


    【解决方案1】:

    一种解决方案是使用onDidChange 回调,如下所示:

      @override
      Widget build(BuildContext context) {
        FirebaseAnalytics analytics = FirebaseAnalytics();
        return StoreConnector<AppState, MyViewModel>(
          converter: (store) => myViewModel.create(store),
          onDidChange: (viewModel) {
            if (viewModel.withAlphaContent) {
             analytics.setCurrentScreen(screenName: 'alpha content');
            } 
            if (viewModel.withBetaContent) {
             analytics.setCurrentScreen(screenName: 'beta content');
            }
          },
          builder: (context, viewModel) {
            return _body(context, viewModel);
          },
        );
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-17
      • 1970-01-01
      相关资源
      最近更新 更多