修复wifi配置含中文
This commit is contained in:
@@ -1,2 +1,2 @@
|
||||
flutter.android.versionName=2.0.5
|
||||
flutter.android.versionCode=10
|
||||
flutter.android.versionName=2.0.7
|
||||
flutter.android.versionCode=11
|
||||
@@ -1,3 +1,3 @@
|
||||
[
|
||||
"assets/miniapp/mhtControl_1.0.85.zip"
|
||||
"assets/miniapp/mhtControl_1.0.87.zip"
|
||||
]
|
||||
Binary file not shown.
@@ -1,7 +1,10 @@
|
||||
//蓝牙指令
|
||||
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:EasyDartModule/EasyDartModule.dart' as edm;
|
||||
import 'package:easydevice/src/app/thapp.dart';
|
||||
import 'package:ef/ef.dart';
|
||||
import 'package:vbvs_app/common/util/DailyLogUtils.dart';
|
||||
|
||||
// wifi列表指令
|
||||
@@ -86,7 +89,8 @@ Future<bool> sendWifiSetting(wifiItem, String password, THapp tHapp) async {
|
||||
// ".wifi.sta.ssid=${wifiItem['ssid']} .wifi.sta.pwd=$password";
|
||||
String cmd = "vtouch save update -a -i .wifi.sta.auth=${wifiItem['auth']} "
|
||||
".wifi.sta.ssid=\"${wifiItem['ssid']}\" .wifi.sta.pwd=\"$password\"";
|
||||
final success = await tHapp.send(cmd, true, (log) {
|
||||
ef.log("[wifi配置指令]:${cmd}");
|
||||
final success = await tHapp.send(utf8.encode(cmd), true, (log) {
|
||||
if (log.log.contains("update parm is successful")) {
|
||||
print("[wifi456]:" + log.log);
|
||||
edm.EasyDartModule.logger.info("WiFi配置参数成功-》log:$log");
|
||||
@@ -110,60 +114,78 @@ Future<bool> sendWifiSetting(wifiItem, String password, THapp tHapp) async {
|
||||
}
|
||||
}
|
||||
|
||||
getDeviceWifiStatus(THapp tHapp, int times) async {
|
||||
getDeviceWifiStatus(
|
||||
THapp tHapp,
|
||||
int times, {
|
||||
bool link = false,
|
||||
}) async {
|
||||
edm.EasyDartModule.logger.info("发送请求设备已配置网络状态指令");
|
||||
DailyLogUtils.writeLog("发送请求设备已配置网络状态指令");
|
||||
print("at+system info");
|
||||
|
||||
bool success = false;
|
||||
try {
|
||||
var result = await tHapp.send("at+system info", true, (ss) {
|
||||
var log = ss.log;
|
||||
// 匹配设备状态
|
||||
final statusMatch = RegExp(r'Status=([^\s]+)').firstMatch(log);
|
||||
final status = statusMatch?.group(1);
|
||||
if (status != null) {
|
||||
print('提取到的 status: $status');
|
||||
var result = await tHapp.send(
|
||||
"at+system info",
|
||||
true,
|
||||
(ss) {
|
||||
var log = ss.log;
|
||||
// 匹配设备状态
|
||||
final statusMatch = RegExp(r'Status=([^\s]+)').firstMatch(log);
|
||||
final status = statusMatch?.group(1);
|
||||
if (status != null) {
|
||||
print('提取到的 status: $status');
|
||||
|
||||
// 如果设备连接状态是 "connect",继续检测
|
||||
if (status.contains('connect')) {
|
||||
// 匹配 Wi-Fi 连接信息
|
||||
final wifiInfoMatch = RegExp(
|
||||
r'WIFI CONNECTED INFO:SSID=([^\s]+),RSSI=([-0-9]+),AUTH=([0-9]+),CH=([0-9]+),BSSID=([A-F0-9]+)')
|
||||
.firstMatch(log);
|
||||
if (wifiInfoMatch != null) {
|
||||
final ssid = wifiInfoMatch.group(1);
|
||||
final rssi = wifiInfoMatch.group(2);
|
||||
final auth = wifiInfoMatch.group(3);
|
||||
final ch = wifiInfoMatch.group(4);
|
||||
final bssid = wifiInfoMatch.group(5);
|
||||
// 如果设备连接状态是 "connect",继续检测
|
||||
if (status.contains('connect')) {
|
||||
// 匹配 Wi-Fi 连接信息
|
||||
final wifiInfoMatch = RegExp(
|
||||
r'WIFI CONNECTED INFO:SSID=([^\s]+),RSSI=([-0-9]+),AUTH=([0-9]+),CH=([0-9]+),BSSID=([A-F0-9]+)')
|
||||
.firstMatch(log);
|
||||
if (wifiInfoMatch != null) {
|
||||
final ssid = wifiInfoMatch.group(1);
|
||||
final rssi = wifiInfoMatch.group(2);
|
||||
final auth = wifiInfoMatch.group(3);
|
||||
final ch = wifiInfoMatch.group(4);
|
||||
final bssid = wifiInfoMatch.group(5);
|
||||
|
||||
// 打印并返回 Wi-Fi 信息
|
||||
print(
|
||||
'Wi-Fi 信息: SSID=$ssid, RSSI=$rssi, AUTH=$auth, CH=$ch, BSSID=$bssid');
|
||||
// 打印并返回 Wi-Fi 信息
|
||||
print(
|
||||
'Wi-Fi 信息: SSID=$ssid, RSSI=$rssi, AUTH=$auth, CH=$ch, BSSID=$bssid');
|
||||
|
||||
// 停止监听并返回信息
|
||||
ss.result = {
|
||||
'ssid': ssid,
|
||||
'rssi': rssi,
|
||||
'auth': auth,
|
||||
'ch': ch,
|
||||
'bssid': bssid,
|
||||
};
|
||||
ss.over = true;
|
||||
return true;
|
||||
// 停止监听并返回信息
|
||||
ss.result = {
|
||||
'ssid': ssid,
|
||||
'rssi': rssi,
|
||||
'auth': auth,
|
||||
'ch': ch,
|
||||
'bssid': bssid,
|
||||
};
|
||||
ss.over = true;
|
||||
success = true;
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
if (!link) {
|
||||
ss.over = true;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// 继续监听
|
||||
return false;
|
||||
}, times);
|
||||
|
||||
// 继续监听
|
||||
return false;
|
||||
},
|
||||
times,
|
||||
);
|
||||
if(!success){
|
||||
return success;
|
||||
}
|
||||
return result;
|
||||
} catch (e) {
|
||||
print(e);
|
||||
}
|
||||
}
|
||||
|
||||
//只有4g并且没有wifi
|
||||
Future<String> getDeviceNetVersion(THapp tHapp, int times) async {
|
||||
edm.EasyDartModule.logger.info("发送请求设备的网络信息");
|
||||
DailyLogUtils.writeLog("发送请求设备的网络信息");
|
||||
|
||||
@@ -629,7 +629,7 @@ void initEasyDartModule() {
|
||||
try {
|
||||
EasyDartModule.init(
|
||||
loggerConfig:
|
||||
LoggerConfig(host: ServiceConstant.logService, serviceName: "智慧眠花糖在线"),
|
||||
LoggerConfig(host: ServiceConstant.logService, serviceName: "智慧眠花糖在线2025-10-9"),
|
||||
webSocketConfig:
|
||||
WebSocketConfig(ServiceConstant.webSocketService, (data) {
|
||||
// 接收到服务消息
|
||||
|
||||
@@ -968,6 +968,10 @@ class _AfterWifiPagePersonState extends State<AfterWifiPagePerson> {
|
||||
// 连接设备
|
||||
// await targetDevice.device.connect();
|
||||
THapp bledevice = THapp(device: targetDevice.device);
|
||||
bledevice.logingStream.listen((event) {
|
||||
edm.EasyDartModule.logger.info("[wifi配置]:" + event);
|
||||
print("[bleeeee]:" + event);
|
||||
});
|
||||
await bledevice.device.connect();
|
||||
var res2 = bledevice.isConnected;
|
||||
if (res2) {
|
||||
@@ -1021,6 +1025,7 @@ class _AfterWifiPagePersonState extends State<AfterWifiPagePerson> {
|
||||
fontSize: AppConstants().title_text_fontSize),
|
||||
));
|
||||
// return;
|
||||
await initWifiStatusAndWifiList();
|
||||
} else if (aa == 'unknown') {
|
||||
blueteethBindController.netType.value = 3;
|
||||
blueteethBindController.updateAll();
|
||||
@@ -1032,6 +1037,7 @@ class _AfterWifiPagePersonState extends State<AfterWifiPagePerson> {
|
||||
textColor: themeController.currentColor.sc9,
|
||||
);
|
||||
});
|
||||
await initWifiStatusAndWifiList();
|
||||
} else {
|
||||
blueteethBindController.netType.value = 1;
|
||||
blueteethBindController.updateAll();
|
||||
|
||||
@@ -220,6 +220,7 @@ class _HomePageState extends State<MainPageBBottomChange>
|
||||
type: 1,
|
||||
)));
|
||||
await Future.delayed(Duration(seconds: 1));
|
||||
//5 广播
|
||||
edm.EasyDartModule.websocket.sendData(jsonEncode(
|
||||
WebSocketMessage(path: "/smartbed/connect", type: 5, data: {
|
||||
'mac': webviewTestController.selectDevice['mac'],
|
||||
|
||||
@@ -583,7 +583,8 @@ class _MHTWifiPageState extends State<MHTWifiPage> {
|
||||
.wifiStatus
|
||||
.value =
|
||||
aa != null ? 1 : 0;
|
||||
if (aa != null) {
|
||||
if (aa != null&&
|
||||
aa != false) {
|
||||
updateDeviceBindStatus(
|
||||
blueteethBindController
|
||||
.currentDeviceMac!
|
||||
@@ -598,6 +599,9 @@ class _MHTWifiPageState extends State<MHTWifiPage> {
|
||||
.sc2,
|
||||
);
|
||||
} else {
|
||||
blueteethBindController
|
||||
.connect_wifi
|
||||
.value = {};
|
||||
TopSlideNotification
|
||||
.show(
|
||||
context,
|
||||
@@ -609,6 +613,9 @@ class _MHTWifiPageState extends State<MHTWifiPage> {
|
||||
);
|
||||
}
|
||||
} else {
|
||||
blueteethBindController
|
||||
.connect_wifi
|
||||
.value = {};
|
||||
TopSlideNotification.show(
|
||||
context,
|
||||
text: "配网失败".tr,
|
||||
@@ -619,6 +626,7 @@ class _MHTWifiPageState extends State<MHTWifiPage> {
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
},
|
||||
child: Row(
|
||||
mainAxisSize:
|
||||
@@ -973,7 +981,7 @@ class _MHTWifiPageState extends State<MHTWifiPage> {
|
||||
blueteethBindController.blueConnectFlag.value = 2;
|
||||
TopSlideNotification.show(
|
||||
context,
|
||||
text: "蓝牙绑定.连接成功".tr,
|
||||
text: "连接成功".tr,
|
||||
textColor: themeController.currentColor.sc2,
|
||||
);
|
||||
blueteethBindController.currentDevice = bledevice;
|
||||
|
||||
@@ -526,6 +526,12 @@ class _MHTWifiAfterPageState extends State<MHTWifiAfterPage> {
|
||||
wifiItem['ssid'] ??
|
||||
'未命名'.tr,
|
||||
onConfirm: () async {
|
||||
blueteethBindController
|
||||
.currentDevice!
|
||||
.logingStream
|
||||
.listen((event) {
|
||||
ef.log("[命令日志]:$event");
|
||||
});
|
||||
blueteethBindController
|
||||
.selectWifi
|
||||
.value = wifiItem;
|
||||
@@ -539,7 +545,7 @@ class _MHTWifiAfterPageState extends State<MHTWifiAfterPage> {
|
||||
var aa = await getDeviceWifiStatus(
|
||||
blueteethBindController
|
||||
.currentDevice!,
|
||||
1);
|
||||
1,link: true);
|
||||
blueteethBindController
|
||||
.selectWifi
|
||||
.value = {};
|
||||
@@ -556,8 +562,12 @@ class _MHTWifiAfterPageState extends State<MHTWifiAfterPage> {
|
||||
blueteethBindController
|
||||
.wifiStatus
|
||||
.value =
|
||||
aa != null ? 1 : 0;
|
||||
if (aa != null) {
|
||||
(aa != null &&
|
||||
aa != false)
|
||||
? 1
|
||||
: 0;
|
||||
if (aa != null &&
|
||||
aa != false) {
|
||||
updateDeviceBindStatus(
|
||||
blueteethBindController
|
||||
.currentDeviceMac!
|
||||
@@ -572,6 +582,9 @@ class _MHTWifiAfterPageState extends State<MHTWifiAfterPage> {
|
||||
.sc2,
|
||||
);
|
||||
} else {
|
||||
blueteethBindController
|
||||
.connect_wifi
|
||||
.value = {};
|
||||
TopSlideNotification
|
||||
.show(
|
||||
context,
|
||||
@@ -583,6 +596,9 @@ class _MHTWifiAfterPageState extends State<MHTWifiAfterPage> {
|
||||
);
|
||||
}
|
||||
} else {
|
||||
blueteethBindController
|
||||
.connect_wifi
|
||||
.value = {};
|
||||
TopSlideNotification.show(
|
||||
context,
|
||||
text: "配网失败".tr,
|
||||
@@ -947,7 +963,7 @@ class _MHTWifiAfterPageState extends State<MHTWifiAfterPage> {
|
||||
blueteethBindController.blueConnectFlag.value = 2;
|
||||
TopSlideNotification.show(
|
||||
context,
|
||||
text: "蓝牙绑定.连接成功".tr,
|
||||
text: "连接成功".tr,
|
||||
textColor: themeController.currentColor.sc2,
|
||||
);
|
||||
blueteethBindController.currentDevice = bledevice;
|
||||
|
||||
@@ -563,7 +563,10 @@ class MHTHomeController extends GetControllerEx<MHTHomeModel> {
|
||||
onFailure: (res) {
|
||||
EasyDartModule.logger.warning("请求睡眠信息列表失败: ${res.msg}");
|
||||
TopSlideNotification.show(context,
|
||||
text: "请求失败".tr, textColor: themeController.currentColor.sc9);
|
||||
text: res.msg ?? "请求失败".tr,
|
||||
textColor: themeController.currentColor.sc9);
|
||||
homeSleepDays.value = [];
|
||||
updateAll();
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
@@ -181,7 +181,7 @@ class _VitalSignsWidgetState extends State<VitalSignsWidget> {
|
||||
'person_show': false,
|
||||
'itemName': 206,
|
||||
'retrun_fresh': true,
|
||||
'reportPadding':false,
|
||||
'reportPadding':false,
|
||||
});
|
||||
if (widget.onRefresh != null) {
|
||||
widget.onRefresh!();
|
||||
|
||||
Reference in New Issue
Block a user