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

GitHub 代码仓chenrilima/plugin_wifi_connect

plugin_wifi_connect

新版本将由我更新

plugin_wifi_connect 项目封面
星标
6
复刻
6
最近推送(UTC)
2026年9月17日
项目状态
未归档

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

🚀 plugin_wifi_connect

pub package license

Flutter connector for Wi‑Fi devices

Low‑dependency plugin to simplify automatic connection to devices via SSID or SSID prefix. Compatible with Android 10+ (API 29+) and iOS 11+.

Conector Flutter para dispositivos Wi‑Fi

Plugin com baixa dependência para facilitar a conexão automática a dispositivos via SSID ou prefixo de SSID. Compatível com Android 10+ (API 29+) e iOS 11+.


💻 Pub Dev / Instalação

  • Pub: https://pub.dev/packages/plugin_wifi_connect

Instalar via pub.dev (recomendado):

dependencies:
  plugin_wifi_connect: ^2.0.2

Ou instalar direto do repositório (desenvolvimento):

dependencies:
  plugin_wifi_connect:
    git:
      url: https://github.com/chenrilima/plugin_wifi_connect.git
      ref: main

Depois:

flutter pub get

🎯 Features / Funcionalidades

  • ✅ Connects to an exact SSID (iOS 11+, Android).

  • 🔍 Connects to SSIDs that match a prefix (iOS 13+, Android).

  • 📡 Compatible with IoT devices that use unique SSIDs.

  • ⚙️ Efficient strategy on Android: scans and connects by prefix (requires runtime permission ACCESS_FINE_LOCATION).

  • ✅ Conecta-se a um SSID exato (iOS 11+, Android).

  • 🔍 Conecta-se a SSIDs que combinam um prefixo (iOS 13+, Android).

  • 📡 Compatível com dispositivos IoT que usam SSIDs únicos.

  • ⚙️ Estratégia eficiente no Android: escaneia e conecta por prefixo (requer permissão em tempo de execução ACCESS_FINE_LOCATION).


🔧 Usage / Uso (exemplo completo)

import 'package:flutter/material.dart';
import 'package:plugin_wifi_connect/plugin_wifi_connect.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) => MaterialApp(home: HomePage());
}

class HomePage extends StatefulWidget {
  @override
  _HomePageState createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  String _status = 'idle';

  Future<void> _connectDirect() async {
    try {
      final ok = await PluginWifiConnect.connectToSsid(
        ssid: 'MeuDispositivoWiFi',
        password: 'senha123',
      );
      setState(() => _status = ok ? 'Conectado' : 'Falha ao conectar');
    } catch (e) {
      setState(() => _status = 'Erro: $e');
    }
  }

  Future<void> _connectPrefix() async {
    final ok = await PluginWifiConnect.connectToSsidPrefix(
      prefix: 'IoTDevice_',
      password: 'senhaPadrao',
    );
    setState(() => _status = ok ? 'Conectado por prefixo' : 'Não encontrado');
  }

  @override
  Widget build(BuildContext context) => Scaffold(
    appBar: AppBar(title: Text('plugin_wifi_connect example')),
    body: Center(
      child: Column(mainAxisSize: MainAxisSize.min, children: [
        ElevatedButton(onPressed: _connectDirect, child: Text('Conectar SSID')),
        ElevatedButton(onPressed: _connectPrefix, child: Text('Conectar por Prefixo')),
        SizedBox(height: 12),
        Text(_status),
      ]),
    ),
  );
}

📱 Permissions / Notas por plataforma

Android (adicionar no AndroidManifest.xml):

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

Notas iOS:

  • Usa NEHotspotConfiguration (iOS 11+). Em geral não são necessárias entitlements especiais, mas documente limitações (ex.: redes com captive portal ou redes gerenciadas por MDM podem não funcionar).

📚 Links & Contribuição

  • Example: example/
  • CHANGELOG: CHANGELOG.md
  • Report issues: https://github.com/chenrilima/plugin_wifi_connect/issues
  • Contributing: abra um PR ou issue para discutir mudanças.

Se quiser, eu posso também abrir um PR com este README ou commitar direto no branch main.

Carlos Henrique GitHub avatar
GitHub 作者

Carlos Henrique ↗

leadership and coding </>

Company HeroTaboão da Serra
语言KotlinDartSwiftRubyObjective-C

此仓库发布的插件

使用的依赖

依赖清单 3 项

  • flutter{"sdk":"flutter"}
  • flutter_test开发依赖{"sdk":"flutter"}
  • flutter_lints开发依赖>=1.0.0 <3.0.0

如何选择适合项目的代码仓?

先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。

  1. 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
  2. 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
  3. 使用前在 GitHub 核对 README、许可证与 Issues。

来源与维护

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗