esptouch_flutterFlutter-Plugin für ESP-Touch, um das Netzwerk für ESP-8266- und ESP-32-Geräte zu konfigurieren. Läuft auf iOS und Android.
esptouch_flutter ist Flutter-Plugin-Paket, das eine API für ESP-Touch enthält, die in Dart geschrieben wurde, kombiniert mit plattformspezifischer Implementierung für Android mit Java und iOS mit Objektiv-C.
Dieses Paket bietet eine hohe Anpassung an die ESP -Touch -Aufgaben und eine idiomatische Dart -Schnittstelle zum Starten von Aufgaben. Benutzerdefinierte Aufgabenparameter ermöglichen es den Benutzern dieses Plugins, wie lange die Aufgabe ausgeführt wird. Sie können sie auf Stunden einstellen, wenn dies Ihr Workflow benötigt.
pub.dev
Eine vollständige Beispiel -App finden Sie im example im Repository.
Mit der Beispiel -App können Sie WiFi SSID, BSSID, Passwort, die Dauer der Aufgabe, die erwartete Aufgabenzahl und viele weitere konfigurieren.
Für eine einfachste mögliche App finden Sie das smaho-engineering/esptouch_flutter_kotlin_example Repository.
import 'package:esptouch_flutter/esptouch_flutter.dart' ;
// Somewhere in your widget...
final ESPTouchTask task = ESPTouchTask (
ssid : 'My WiFi network' ,
bssid : 'ab:cd:ef:12:23:34' ,
password : 'I love SMAHO' ,
);
final Stream < ESPTouchResult > stream = task. execute ();
final printResult = ( ESPTouchResult result) {
print ( 'IP: ${ result . ip } MAC: ${ result . bssid }' );
};
StreamSubscription < ESPTouchResult > streamSubscription = stream. listen (printResult);
// Don't forget to cancel your stream subscription.
// You might cancel after the UDP wait+send time has passed (default 1 min)
// or you could cancel when the user asked to cancel
// for example, either via X button, or popping a route off the stack.
streamSubscription. cancel (); Wenn Sie die Aufgabe anpassen möchten, geben Sie eine ESPTouchTaskParameter -Instanz als taskParameter an ESPTouchTask an. Im Codebeispiel geben ich die Typen für Klarheit an, aber Sie können die Typen weglassen, da Dart sie schließen kann.
final ESPTouchTask task = ESPTouchTask (
ssid : 'My WiFi network' ,
bssid : 'ab:cd:ef:12:23:34' ,
password : 'I love Flutter and ESP-Touch, too' ,
// Tweak the task using task parameters
taskParameter : ESPTouchTaskParameter (waitUdpReceiving : Duration (hour : 12 )),
);
// You can still stop the task at any point by calling .cancel on the stream subscription:
streamSubscription. cancel ();In einem Beispiel in der realen Welt erhalten Sie die WLAN -Anmeldeinformationen vom Benutzer und können entweder das konfigurierte Gerät anzeigen, lokal in SQLite speichern oder an Ihr Backend senden.
Verwenden Sie ein echtes Telefon zur Entwicklung. Das Plugin funktioniert nicht in Emulatoren und Simulatoren, daher benötigen Sie echte Telefone für die Entwicklung. Führen Sie flutter devices aus, um dies zu überprüfen.
Bereiten Sie Ihre eingebetteten Geräte vor. Um zu überprüfen, ob die ESP-Touch-App funktioniert, benötigen Sie eine Hardware mit ESP8266 und ESP32, um eine Verbindung zu Ihrem WLAN-Netzwerk herzustellen.
connectivity Sie können eine einfache Möglichkeit bieten, die aktuelle SSID und BSSID des aktuellen WLAN -Netzwerks zu erhalten. Verwenden Sie das connectivity -Plugin, um den Zustand des Netzwerks (WLAN & Mobile/Mobile) auf Android und iOS zu ermitteln.
Mit ESP-Touch können Sie das Netzwerk für ESP8266- und ESP32-Geräte konfigurieren.
Das ESP-Touch-Protokoll von Espressif implementiert die Smart-Konfigurationstechnologie, damit Benutzer durch einfache Konfiguration auf einem Smartphone ESP8266Ex- und ESP32-Eingebettungsgeräte mit eingebetteten Geräten mit einem Wi-Fi-Netzwerk verbinden können.
Weitere Informationen zu ESP-Touch finden Sie hier:
.pdf )EspressifApp/EsptouchForIOS ESP-Touch für iOS mit Objective-CEspressifApp/EsptouchForAndroid ESP-Touch für Android mit JavaDie ursprünglichen iOS- und Android -Module mussten stark angepasst und optimiert werden, um benutzerdefinierte Aufgabenparameter zu unterstützen.
Beginnend mit iOS 14.6 Der Anspruch com.apple.developer.networking.multicast ist erforderlich, um die Übertragung von IP -Paketen auf iOS zu ermöglichen, die von esptouch verwendet werden.
Um dies zu aktivieren, müssen Sie den Berechtigten als Kontoinhaber hier anfordern. Sobald Sie eingeschrieben sind, können Sie es hier konfigurieren 
Dies ist ein Open-Source-Projekt, das vom Smaho Engineering-Team aus München erstellt wurde, um die ESP-Touch-App-Kits von ESPSIF zu wickeln.
Wenn Sie aus IoT -Hintergrund kommen, wissen Sie möglicherweise nicht, was Flattern ist.
Flutter ist das UI -Toolkit von Google, um schöne, native Erlebnisse für iOS und Android aus einer einzigen Codebasis zu erstellen. Um Hilfe mit Flattern zu erhalten, sehen Sie sich die Online -Dokumentation an. Dieses Repository enthält ein Flutter-Plugin-Paket für ESP-Touch. Ein Plugin-Paket ist ein spezielles Paket, das plattformspezifischen Implementierungscode für Android und iOS enthält. Der Flutter -Teil der App sendet Nachrichten an seinen Host (iOS oder Android) über einen Plattformkanal. Dieses Plugin basiert stark auf Plattformkanälen (Ereigniskanälen).