Ein Flutter-Paket, das Benachrichtigungen auslöst, wenn keine Internetverbindung besteht, sowie einfache Werkzeuge bereitstellt, um den Status der Internetverbindung zu verfolgen.
Aus öffentlichen Paketdaten erstellte Orientierung.
ConnectionNotifier ist ein Flutter-Paket, das die Internetverbindung überwacht und Echtzeit-Updates bereitstellt, wenn sich der Verbindungsstatus ändert. Es informiert Benutzer sofort, wenn kein Internetzugang verfügbar ist, wodurch es ideal für Apps mit zuverlässigem Netzwerk-Wissen ist. Das Paket bietet einfache APIs zum Überprüfen des Verbindungsstatus und zum Abonnieren von Konnektivitätsereignissen auf mehreren Plattformen. Es unterstützt Android, iOS, Web, macOS, Windows und Linux und gewährleistet eine breite Kompatibilität. Dank seiner einfachen Handhabung hilft es Entwicklern, einen robusten Netzwerkausfall ohne komplizierte Einrichtung zu implementieren.
Anwendungsfälle
Echtzeit-Netzwerkstatusüberwachung
Umgang mit Offline-Szenarien in Apps
Automatisches Wiederholungslogik für Netzwerk-Anfragen
Anzeige von Verbindungsstatus-UI-Elementen
Sicherstellen, dass Daten nur online synchronisiert werden
Verbesserung der Benutzererfahrung während Verbindungsänderungen
Hauptmerkmale
Sofortige Verbindungsänderungsmeldungen
Einfache API zum Überprüfen der Konnektivität
Plattformübergreifende Unterstützung
Leichtgewichtig und einfache Integration
ereignisgesteuerte Architektur
Eingebaute Zustandsverfolgung
Geeignet für
Apps, die eine zuverlässige Netzwerkdetektion benötigen
Entwickler, die eine minimale Einrichtung für Verbindungsprüfungen suchen
Projekte mit häufigen Netzwerkoperationen
Benutzerorientierte Apps, die klare Verbindungsfeedback benötigen
Teams, die der plattformübergreifenden Konsistenz Priorität einräumen
Hinweise
Internetberechtigung auf mobilen Plattformen erforderlich
Möglicherweise ist zusätzliche Fehlerbehandlung für Sonderfälle erforderlich
Nicht geeignet für Szenarien mit hoher Polling-Frequenz
Beschränkt auf grundlegende Verbindungsprüfungen (keine detaillierten Netzwerkmetriken)
Original-README
Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.
Connection Notifier
A simple way to notify your user about the connection status as well as providing simple tools that help tracking the internet connection status.
Version 4.0+: Now with injectable connectivity handlers, full Navigator 2.0 support, Web support, and seamless support for modern routing solutions.
Version 4.1+: Added async connectivity check via ConnectionNotifierTools.isConnectedAsync.
Gallery
Quick Start
Basic Usage (Without Localization)
If you don't need localization, simply wrap your MaterialApp:
Recommended Approach: Use MaterialApp Builder (Best Practice)
The easiest and most powerful way to handle localization is using the MaterialApp builder pattern. This gives you full access to the localization context:
import'package:connection_notifier/connection_notifier.dart';
import'package:easy_localization/easy_localization.dart'; // or any localization packageimport'package:flutter/material.dart';
classMyAppextendsStatelessWidget{
@overrideWidgetbuild(BuildContext context) {
returnMaterialApp(
locale: context.locale,
supportedLocales: context.supportedLocales,
localizationsDelegates: context.localizationDelegates,
// Use the builder to access localization context
builder: (context, child) => GlobalConnectionNotifier(
connectionNotificationOptions: ConnectionNotificationOptions(
alignment: Alignment.bottomCenter,
// Access localized strings with full context support
connectedText: 'connectionRestored'.tr(context: context),
disconnectedText: 'connectionLost'.tr(context: context),
),
child: child!,
),
home: constMyHomePage(),
);
}
}
Benefits:
✅ Works with any localization package (EasyLocalization, flutter_localizations, intl, etc.)
✅ Messages automatically update when language changes
✅ Full access to localization context
✅ Clean and maintainable
✅ No need for custom widgets or manual locale detection
Alternative: Custom Notification Widgets
If you need more control over the UI, create custom widgets:
// Check if connected (synchronous, last known status)bool isConnected = ConnectionNotifierTools.isConnected;
// Async live check — use when you need a guaranteed up-to-date result,// since isConnected may briefly hold stale data during a connection change.bool isOnline = awaitConnectionNotifierTools.isConnectedAsync;
// Listen to connection changesConnectionNotifierTools.onStatusChange.listen((isConnected) {
print('Connection status: $isConnected');
});
Custom Connection Handler (Inject Your Own Connectivity Source)
The package is agnostic to how connectivity is detected. By default it uses
ConnectionNotifierHandlerImpl (internet_connection_checker_plus). If you have
your own source (socket, native SDK, etc.), implement ConnectionHandler and
pass it to ConnectionNotifierTools.initialize(...).
workspace-bridge-mcp — An MCP server that bridges AI coding agents with multi-project workspaces, enabling cross-project file access, git history, and more.