esptouch_flutterESP-Touch的Flutter插件为ESP-8266和ESP-32设备配置网络。在iOS和Android上运行。
esptouch_flutter是Flutter插件软件包,其中包含用于用DART编写的Esp-Touch的API,并使用Objective-C使用Java和iOS结合了Android的平台特定实现。
该软件包为ESP Touch任务提供了高度的可自定义性和用于启动任务的惯用DART界面。自定义任务参数可让此插件的用户更改任务运行的时间,如果这是您的工作流程,则可以将其设置为数小时。
pub.dev上检查包装信息
有关完整的示例应用程序,请参阅存储库中的example文件夹。
示例应用程序使您可以配置WiFi SSID,BSSID,密码,任务持续时间,预期任务数等。
有关最简单的应用程序,请参见smaho-engineering/esptouch_flutter_kotlin_example存储库。
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 ();如果您想自定义任务,请向ESPTouchTask提供ESPTouchTaskParameter实例作为taskParameter 。在代码示例中,我为清晰度指定类型,但您可以省略类型,因为DART可以推断出它们。
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 ();在现实世界中,您将从用户那里获得WiFi凭据,并且可以显示配置的设备,将其本地保存在SQLite中,或将其发送到您的后端。
使用真实的电话进行开发。该插件将在模拟器和模拟器中不起作用,因此您需要真正的手机进行开发。运行flutter devices进行验证。
准备嵌入式设备。为了验证ESP-Touch应用程序是否有效,您需要使用ESP8266和ESP32的一些硬件才能连接到WiFi网络。
connectivity您可以提供一种简单的方法来获取当前的WiFi网络的SSID和BSSID。使用connectivity插件在Android和iOS上发现网络状态(WiFi&Mobile/Cellular)的状态。
使用ESP-Touch,您可以为ESP8266和ESP32设备配置网络。
Espressif的ESP-Touch协议实现了智能配置技术,以帮助用户通过智能手机上的简单配置将ESP8266EX-和ESP32嵌入的设备连接到Wi-Fi网络。
您可以在此处阅读有关ESP触摸的更多信息:
.pdf )EspressifApp/EsptouchForIOS Esp-Touch iOS使用Objective-CEspressifApp/EsptouchForAndroid Esp-Touch for Android使用Java原始的iOS和Android模块必须进行大量定制和调整,以支持自定义任务参数。
从iOS 14.6开始com.apple.developer.networking.multicast权利,以便允许在iOS上广播IP软件包,Esptouch使用。
为了启用它,您需要在此处要求该录音带作为帐户持有人。注册后,您可以在此处进行配置
这是一个由Smaho工程团队从慕尼黑构建的开源项目,可以包装Espressif的Esp-Touch移动应用程序套件。
如果您来自物联网背景,您可能不知道什么是扑朔迷离。
Flutter是Google的UI工具包,可从单个代码库中为iOS和Android创建美丽的本机体验。如需帮助开始扑朔迷离,请查看在线文档。该存储库包含一个用于ESP触摸的扑朔迷离插件包。插件软件包是一个专业软件包,其中包括针对Android和iOS的平台特定实现代码。该应用程序的颤音部分通过平台频道将消息发送给其主机(iOS或Android)。该插件严重依赖平台通道(事件频道)。