我想实施 flutter_bloc 和 connectivity_plus 来检查网络连接。怎么做?

I want to Implement flutter_bloc and connectivity_plus to check for network connections. how to do it?

我已经尝试了很多博客和东西来做这件事,但是 none 其中有工作或已过时或抛出未知错误。 我被指示使用 bloc 创建网络连接检查器。 但是,我对集团知之甚少。 请分享解释如何执行此操作的任何 git 存储库或代码。 #颤动

在 bloc 中注册流订阅并更改侦听连接。

当连接发生变化时,运行 事件更新状态

class NetworkChangeBloc extends Bloc<NetworkChangeEvent,        NetworkChangeState> {
final ConnectivityService _service;
late StreamSubscription<bool> _subscription;

NetworkChangeBloc()
  : _service = ConnectivityService(),
    super(NetworkChangeInitial()) {
on<NetworkChangeEvent>(_mapEventNetworkChange);
_subscription = _service.initStream().listen((isNetworkConnected) {
  add(NetworkChangeEvent(isNetworkConnected));
});
}

@override
Future<void> close() async {
  await _service.dispose();
  await _subscription.cancel();
  return super.close();
}

void _mapEventNetworkChange(
  NetworkChangeEvent event,
  Emitter<NetworkChangeState> emit,
) async {
  bool isNetworkConnected = event.isNetworkConnected;
  emit(NetworkChangeState(isConnected: isNetworkConnected));
}
}

我在这里不使用 connectivity_plus 包,但您可以应用此解决方案