未绑定的熄屏初始化判断 2761/1 2761/head 2762/target/1
authorxue <2144439972@qq.com>
Tue, 18 Nov 2025 08:15:36 +0000 (16:15 +0800)
committerxue <2144439972@qq.com>
Tue, 18 Nov 2025 08:15:36 +0000 (16:15 +0800)
code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdMainView.cpp

index e6f8393..ef621ab 100644 (file)
@@ -71,13 +71,24 @@ namespace OHOS
             // 检测是否在联网成功到获取时间线完成这个阶段
             ThunderBirdModel *model = ThunderBirdModel::GetInstance();
             bool hasNetwork = (model != nullptr) ? model->HasNetwork() : false;
+            bool isBound = (model != nullptr) ? model->getbind_status() : false;
             
-            // 如果联网成功但时间线未获取,不休眠
-            if (hasNetwork && !g_timelineReceived) {
-                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScreenStatusNotify: 联网成功但时间线未获取,不休眠");
+            // 无论是否绑定,都需要联网才能休眠
+            if (!hasNetwork) {
+                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScreenStatusNotify: 未联网,不休眠");
                 return;
             }
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScreenStatusNotify: 联网成功且时间线已获取,执行休眠");
+            
+            // 如果已绑定:需要等待时间线获取完成才能休眠
+            // 如果未绑定:联网成功就可以休眠,不需要等待时间线
+            if (isBound && !g_timelineReceived) {
+                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScreenStatusNotify: 已绑定且联网成功但时间线未获取,不休眠");
+                return;
+            }
+            
+            // 未绑定且联网成功,或已绑定且时间线已获取,允许休眠
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScreenStatusNotify: 执行休眠 (isBound=%d, hasNetwork=%d, timelineReceived=%d)", 
+                         isBound, hasNetwork, g_timelineReceived);
             // 立即执行休眠操作
             ln_ws_enter_sleep();
         }