Connectivity Manager
connectivity_manager is a Flutter package for monitoring and managing network connectivity in Flutter apps. With this package, you can easily check the connectivity status (online or offline) and whether the device is connected via Wi-Fi or mobile data. It also provides the ability to listen to network connectivity changes in real-time.
Installation
To add connectivity_manager to your project, add the following dependency in your pubspec.yaml file:
dependencies:
connectivity_manager:
import 'package:connectivity_manager/connectivity_service.dart';
final ConnectivityService connectivityService = ConnectivityService();
Checking Initial Connectivity
ConnectivityResult result = await connectivityService.checkConnectivity();
if (result == ConnectivityResult.none) {
print("No internet connection.");
} else if (result == ConnectivityResult.wifi) {
print("Connected via Wi-Fi.");
} else if (result == ConnectivityResult.mobile) {
print("Connected via Mobile Data.");
}
Connectivity Results
ConnectivityResult.none: No internet connection. The device is offline.
ConnectivityResult.wifi: The device is connected via Wi-Fi. However, this doesn't guarantee that the network has internet access.
ConnectivityResult.mobile: The device is connected via mobile data. This doesn't guarantee that the network has internet access either.
Listening to Connectivity Change
connectivityService.connectivityStream.listen((ConnectivityResult result) {
if (result == ConnectivityResult.none) {
// No internet connection
print("No internet connection.");
} else if (result == ConnectivityResult.wifi) {
// Connected via Wi-Fi
print("Connected via Wi-Fi.");
} else if (result == ConnectivityResult.mobile) {
// Connected via Mobile Data
print("Connected via Mobile Data.");
}
});