Pakete, Repositories und App-Kategorien suchen

Cover von cross_connectivity
Paketdetailsv3.3.0

cross_connectivity

Ein Flutter-Plugin zur Verwaltung von Konnektivität und echtem Verbindungszustand auf mobilen, Web- und Desktop-Plattformen. Unterstützt iOS, Android, Web, Windows, Linux und macOS.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
1490
Likes
128
Pub-Punkte
140

Paket installieren

flutter pub add cross_connectivity

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

CrossConnectivity ist ein Flutter-Plugin, das eine konsistente Überwachung des Verbindungsstatus auf mobilen, Web- und Desktop-Plattformen bereitstellt. Es unterscheidet zwischen allgemeiner Netzwerkverfügbarkeit und dem tatsächlichen Zustand der echten Weltverbindung und sorgt so für eine zuverlässige Erkennung eines aktiven Internetzugangs. Kompatibel mit Android, iOS, Web, macOS, Windows und Linux bietet es Entwicklern eine einheitliche API zur Behandlung von Netzwerkbedingungen in unterschiedlichen Umgebungen. Das Plugin unterstützt sowohl WLAN als auch Mobilfunknetze und liefert Echtzeit-Updates bei Änderungen der Verbindung.

Anwendungsfälle

  • Echtzeit-App-Antwortfähigkeit basierend auf Verbindungsstatus
  • Behandlung des Offline-Modus in plattformübergreifenden Anwendungen
  • Netzwerk-Gesundheitsüberwachung für Daten-Synchronisationsvorgänge
  • Dynamische UI-Aktualisierungen bei Änderungen der Verbindung
  • Sichere Datenübertragung nur über aktive Verbindungen sicherstellen

Hauptmerkmale

  • Unterstützt alle wichtigen Plattformen, einschließlich Web und Desktop
  • Unterscheidet zwischen Konnektivität und echtem Verbindungsstatus
  • Echtzeit-Ereignisemission für Netzwerkänderungen
  • Leicht und einfach zu integrieren
  • Bietet genaue Erkennung des Verbindungstyps

Geeignet für

  • Plattformübergreifende Flutter-Anwendungen
  • Apps, die ein robustes Offline-/Online-Verhalten erfordern
  • Entwickler, die sich auf Web und Desktop sowie Mobilgeräte konzentrieren
  • Anwendungen, die eine präzise Netzwerkstatus-Wahrnehmung benötigen

Hinweise

  • Erfordert plattformspezifische Berechtigungen auf Mobilgeräten
  • Die Web-Unterstützung hängt von den Browser-Funktionen ab
  • Desktop-Implementierungen können sich je nach Betriebssystem leicht unterscheiden
  • Nicht für die Diagnose von Netzwerken auf niedriger Ebene vorgesehen
  • Kann zusätzliche Logik für komplexe Netzwerk-Szenarien erfordern

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

cross_connectivity

Build Pub GitHub GitHub stars

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: any

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:

Web Sample

Desktop sample:

Desktop Sample

Mobile sample:

Mobile Sample

Usage
Functional approach

This plugin provides two streams:

  • isConnected that shows whether the device is REALLY connected to the network or not.
  • onConnectivityChanged that it will not let you know about state of the REAL network connection. It only shows connectivity state.

Also for one time check could be used following methods:

  • checkConnection() that is working like isConnected, but returns Future<bool> instread of Stream<bool>.
  • checkConnectivity() that is working like onConnectivityChanged, but returns Future<ConnectivityStatus> instread of Stream<ConnectivityStatus>.

There are no 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.

They are removed to wifi_info_flutter.

Migration guide:

If you don't use any of the above APIs, your code should work as is. In addition, you can also remove NSLocationAlwaysAndWhenInUseUsageDescription and NSLocationWhenInUseUsageDescription in ios/Runner/Info.plist

If you use any of the above APIs, you can find the same APIs in the wifi_info_flutter plugin. For example, to migrate getWifiName, use the new plugin:

final WifiInfo _wifiInfo = WifiInfo();
final String wifiName = await _wifiInfo.getWifiName();
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.

Kategorien

Abhängigkeiten

Abhängigkeiten 4 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.