cross_connectivity 1.1.0 cross_connectivity: ^1.1.0 copied to clipboard
A Flutter plugin for handling Connectivity and REAL Connection state in the mobile, web and desktop platforms. Supports iOS, Android, Web, Windows, Linux and macOS.
cross_connectivity #
A Flutter plugin for handling Connectivity
and REAL Connection
state in the mobile, web and desktop platforms. Supports iOS, Android, Web, Windows, Linux and macOS.
Getting Started #
In order to use this plugin, add dependency in the pubspec.yaml
:
cross_connectivity: ^1.0.1
or
cross_connectivity:
git:
url: https://github.com/marchdev-tk/cross_connectivity
Add an import to dart file:
import 'package:cross_connectivity/cross_connectivity.dart';
Samples #
Web sample:
Desktop sample:
Mobile sample:
Usage #
Functional approach
This plugin provides two streams:
isConnected
that shows whether the device isREALLY
connected to the network or not.onConnectivityChanged
that it will not let you know about state of theREAL
network connection. It only shows connectivity state.
Also for one time
check could be used following methods:
checkConnection()
that is working likeisConnected
, but returnsFuture<bool>
instread ofStream<bool>
.checkConnectivity()
that is working likeonConnectivityChanged
, but returnsFuture<ConnectivityStatus>
instread ofStream<ConnectivityStatus>
.
As an addition there are more methods (they are working only on Android/iOS/macOS):
getWifiName()
- Obtains the wifi name (SSID) of the connected network.getWifiBSSID()
- Obtains the wifi BSSID of the connected network.getWifiIP()
- Obtains the IP address of the connected wifi network.
Widget approach
As an alteration to funcitonal approach could be used ConnectivityBuilder
widget as follows:
ConnectivityBuilder(
builder: (context, isConnected, status) => Row(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
Icon(
isConnected == true
? Icons.signal_wifi_4_bar
: Icons.signal_wifi_off,
color: isConnected == true ? Colors.green : Colors.red,
),
const SizedBox(width: 8),
Text(
'$status',
style: TextStyle(
color: status != ConnectivityStatus.none
? Colors.green
: Colors.red,
),
),
],
),
)
Feature requests and Bug reports #
Feel free to post a feature requests or report a bug here.