搜索插件、代码仓与 APP 分类

flutter_network_connectivity 封面
插件详情v0.0.6

flutter_network_connectivity

一个用于检查实时网络连接状态的 Flutter 插件。该插件在 Android 上使用 NetworkCapabilities,在 iOS 上使用 NetworkMonitor。

AndroidiOS
近 30 天下载
270
喜欢数
43
Pub 分数
140

安装插件

flutter pub add flutter_network_connectivity

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个 Flutter 插件,可在 Android 和 iOS 设备上实现网络连接状态的实时监控。它利用原生系统 API——Android 上的 NetworkCapabilities 和 iOS 上的 NetworkMonitor,提供准确、实时的设备是否连接到互联网的信息。该插件轻量且设计用于无缝集成到需要网络感知功能的应用中,例如根据连接可用性调整行为的应用。它支持 Wi-Fi 和移动数据检测,并在连接状态发生变化时发出事件。

适合场景

  • 实时网络状态检查
  • 离线模式处理
  • 基于连接性的动态UI更新
  • 背景连接监控
  • 应用在网络波动期间的弹性

主要特点

  • 跨平台支持(Android 和 iOS)
  • 使用原生系统 API 以确保准确性
  • 实时连接事件发射
  • 轻量且易于集成
  • 支持Wi-Fi和移动数据检测

适合对象

  • 需要网络感知的应用程序
  • 离线可用的应用程序
  • 后台服务集成
  • 基于连接性的用户体验优化
  • 寻求可靠连接检查的开发者

使用建议

  • 需要平台特定权限
  • 可能无法检测所有边缘情况,例如捕获门户
  • 仅限连接状态,不包括带宽或质量
  • 依赖原生实现的稳定性
  • 连接失败时无内置重试逻辑

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

Flutter Network Connectivity

Pub

A flutter plugin to check for Internet Availability as a stream based on network connectivity status, periodic interval or on call.

Usage

First, add flutter_network_connectivity as a dependency in your pubspec.yaml file.

dependencies:
  flutter_network_connectivity: ^0.0.6

Don't forget to flutter pub get.

Then import:

import 'package:flutter_network_connectivity/flutter_network_connectivity.dart';

Now you can create FlutterNetworkConnectivity object and use its methods

FlutterNetworkConnectivity flutterNetworkConnectivity =
    FlutterNetworkConnectivity(
	  isContinousLookUp: true,  // optional, false if you don't want continous lookup
	  lookUpDuration: const Duration(seconds: 5),  // optional, to override default lookup duration
	  lookUpUrl: 'example.com',  // optional, to override default lookup url
	);
To Check for Stream of Network Connectivity Status
_flutterNetworkConnectivity.getInternetAvailabilityStream().listen((isInternetAvailable) {
  // do something
});

Then Register Availability Listener after setting up Stream Listerer

await _flutterNetworkConnectivity.registerAvailabilityListener();

Unregister on dispose

await _flutterNetworkConnectivity.unregisterAvailabilityListener();
To Check for Internet Availability on Call
bool _isNetworkConnectedOnCall = await
    _flutterNetworkConnectivity.isInternetConnectionAvailable();
Examples

Simple usage example can be found in the example folder.

Android

Uses permission

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Minimum SDK Version 16

iOS

Uses NetworkMonitor, minimum required version 12.0

Demo

Screenshot

About

This plugin uses NetworkCapabilities for Android and NetworkMonitor for iOS to check for network connectivity status.

Contributing?

You're always welcome. See Contributing Guidelines. You can also take a look at Status Tracker to know more information about current or pending features/issues.

所属分类

源码仓库

使用此插件的项目

暂无相关数据。