Просмотр исходного кода

修复wifi连接问题,修复wifi启动按钮没变化的问题

vothin 3 месяцев назад
Родитель
Сommit
35f8dd30cc
4 измененных файлов с 26 добавлено и 6 удалено
  1. 1 0
      src/logic/startLogic.cc
  2. 24 5
      src/logic/statusbar.cc
  3. 1 1
      src/service/BusinessConfig.h
  4. BIN
      ui/wifisetting.ftu

+ 1 - 0
src/logic/startLogic.cc

@@ -92,6 +92,7 @@ static int timeDifference = 8;
 #define UPDATE_LIGHT_TIME_HANDLE 84
 
 #define REBOOT_TIME_HANDLE 99
+#define WIFI_TIME_HANDLE 100
 
 #define HTTP_SERVER_PORT  80
 

+ 24 - 5
src/logic/statusbar.cc

@@ -49,6 +49,9 @@
 #define SOFTAPMANAGER		NETMANAGER->getSoftApManager()
 
 
+#define WIFI_TIME_HANDLE 100
+
+
 static bool networkConnect = false;
 static bool networkNowConnect = false;
 static bool tcpConnect = false;
@@ -636,6 +639,22 @@ public:
 		case E_ETH_CONNECTED:
 			LOGD("以太网连接");
 			_start_eth_dhcp_client();
+
+			if (WIFIMANAGER->isSupported()) {
+				if (wifiConnectTimer) {
+					LOGD("关闭wifi启动线程");
+					mstatusbarPtr->unregisterUserTimer(WIFI_TIME_HANDLE);
+					wifiConnectTimer = false;
+				}
+				if (WIFIMANAGER->isWifiEnable()) {
+					LOGD("关闭wifi开关");
+					WIFIMANAGER->enableWifi(false);
+				}
+				if (setWifiOpen) {
+					LOGD("关闭setWifiOpen");
+					setWifiOpen = false;
+				}
+			}
 			break;
 		case E_ETH_DISCONNECTED:
 			LOGD("以太网断开");
@@ -648,7 +667,7 @@ public:
 				if (!wifiConnectTimer) {
 					wifiConnectTimer = true;
 
-					mstatusbarPtr->registerUserTimer(99, 10 * 1000);
+					mstatusbarPtr->registerUserTimer(WIFI_TIME_HANDLE, 10 * 1000);
 				}
 			}
 			break;
@@ -675,7 +694,7 @@ public:
 				if (!WIFIMANAGER->isConnected() || info->getSsid() != wifiSsid) {
 					wifiConnectTimer = true;
 
-					mstatusbarPtr->registerUserTimer(99, 10 * 1000);
+					mstatusbarPtr->registerUserTimer(WIFI_TIME_HANDLE, 10 * 1000);
 				}
 			}
 			break;
@@ -688,7 +707,7 @@ public:
 					if (!wifiConnectTimer) {
 						wifiConnectTimer = true;
 
-						mstatusbarPtr->registerUserTimer(99, 10 * 1000);
+						mstatusbarPtr->registerUserTimer(WIFI_TIME_HANDLE, 10 * 1000);
 					}
 				}
 				else {
@@ -719,7 +738,7 @@ public:
 //				if (!wifiConnectTimer && mWifiInfos.size() == 0) {
 //					wifiConnectTimer = true;
 //
-//					mstatusbarPtr->registerUserTimer(99, 30 * 1000);
+//					mstatusbarPtr->registerUserTimer(WIFI_TIME_HANDLE, 30 * 1000);
 //				}
 			}
 			break;
@@ -1008,7 +1027,7 @@ static bool onUI_Timer(int id){
 	case 2:
 		tcpStatus();
 		break;
-	case 99:
+	case WIFI_TIME_HANDLE:
 		return wifiOpen();
 		break;
 	default:

+ 1 - 1
src/service/BusinessConfig.h

@@ -105,7 +105,7 @@ static std::unordered_set<std::string> versionTypePool = {
     "door",
 	"portrait_door",
 
-	"yz_bed",
+	"yz_fenji",
 	"yz_door",
 	"yz_portrait_door",
 

BIN
ui/wifisetting.ftu