[英]Firebase Analytics in Flutter when using StoreConnector to display new screen
我正在尝试将 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);
}
...
}
一种解决方案是使用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);
},
);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.