flutter_network_capabilities 0.0.2 copy "flutter_network_capabilities: ^0.0.2" to clipboard
flutter_network_capabilities: ^0.0.2 copied to clipboard

This package allows monitoring of Network Capabilities from Android and iOS devices.

example/lib/main.dart

import 'dart:async';

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_network_capabilities/flutter_network_capabilities.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({super.key});

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  Map<String, String> _networkInfo = {};
  final _flutterNetworkCapabilitiesPlugin = FlutterNetworkCapabilities();

  @override
  void initState() {
    super.initState();
    initPlatformState();
  }

  // Platform messages are asynchronous, so we initialize in an async method.
  Future<void> initPlatformState() async {
    Map<String, String> networkInfo;
    // Platform messages may fail, so we use a try/catch PlatformException.
    // We also handle the message potentially returning null.
    try {
      networkInfo =
          await _flutterNetworkCapabilitiesPlugin.getNetworkInfo();
    } on PlatformException {
      networkInfo = {};
    }

    // If the widget was removed from the tree while the asynchronous platform
    // message was in flight, we want to discard the reply rather than calling
    // setState to update our non-existent appearance.
    if (!mounted) return;

    setState(() {
      _networkInfo = networkInfo;
    });
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Plugin example app'),
        ),
        body: Center(
          child: Text('With this network: $_networkInfo\n'),
        ),
        floatingActionButton: FloatingActionButton(
          child: const Icon(Icons.network_cell),
          onPressed: () {
            initPlatformState();
          },
        ),
      ),
    );
  }
}
5
likes
140
points
10.2k
downloads

Publisher

verified publishernubank.dev

Weekly Downloads

This package allows monitoring of Network Capabilities from Android and iOS devices.

Homepage
Repository (GitHub)

Documentation

API reference

License

unknown (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on flutter_network_capabilities