network_connectivity_bridge 0.0.2 copy "network_connectivity_bridge: ^0.0.2" to clipboard
network_connectivity_bridge: ^0.0.2 copied to clipboard

A singleton wrapper for connectivity_plus to avoid listener conflicts in plugins and apps. This ensures that both plugins and your app can listen to network status changes safely.

example/lib/main.dart

import 'dart:async';

import 'package:flutter/material.dart';
import 'package:connectivity_plus/connectivity_plus.dart';
import 'package:network_connectivity_bridge/network_connectivity_bridge.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await NetworkConnectivityBridge.instance.initialize(); // 初始化放这里

  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Connectivity Bridge Demo',
      home: Scaffold(
        appBar: AppBar(title: Text('Network Connectivity Bridge')),
        body: ConnectivityStatusWidget(),
      ),
    );
  }
}

class ConnectivityStatusWidget extends StatefulWidget {
  @override
  State<ConnectivityStatusWidget> createState() =>
      _ConnectivityStatusWidgetState();
}

class _ConnectivityStatusWidgetState extends State<ConnectivityStatusWidget> {
  late StreamSubscription<List<ConnectivityResult>> _subscription;
  String _status = 'Unknown';

  @override
  void initState() {
    super.initState();
    _subscription = NetworkConnectivityBridge.instance.onConnectivityChanged
        .listen((results) {
      setState(() {
        if (results.contains(ConnectivityResult.wifi)) {
          _status = 'Connected via WiFi';
        } else if (results.contains(ConnectivityResult.mobile)) {
          _status = 'Connected via Mobile Data';
        } else {
          _status = 'No Internet Connection';
        }
      });
    });
  }

  @override
  void dispose() {
    _subscription.cancel();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Center(child: Text('Network Status: $_status'));
  }
}
1
likes
0
points
59
downloads

Publisher

unverified uploader

Weekly Downloads

A singleton wrapper for connectivity_plus to avoid listener conflicts in plugins and apps. This ensures that both plugins and your app can listen to network status changes safely.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

connectivity_plus, flutter, flutter_web_plugins, plugin_platform_interface, web

More

Packages that depend on network_connectivity_bridge

Packages that implement network_connectivity_bridge