屏蔽密码锁状态下进入AI 760/2
authorCaisking <3449750381@qq.com>
Thu, 22 Aug 2024 08:48:33 +0000 (16:48 +0800)
committerCaisking <3449750381@qq.com>
Thu, 22 Aug 2024 08:48:33 +0000 (16:48 +0800)
code/sdk/application/wearable/fd230app/nativeui/rebootdevice/src/RebootModel.cpp
code/sdk/application/wearable/fd230app/nativeui/screennotify/src/ui_screennotify.cpp

index cad9b24..7d8315c 100644 (file)
@@ -181,19 +181,20 @@ namespace OHOS
         if (display_api->get_screen_state() == SCREEN_ON)
         {
             uint16_t curSliceId = NativeAbility::GetInstance().GetCurSliceId();
-            if (curSliceId == VIEW_AI_VOICE) // 如果当前已在ai语音界面不做切换
-            {
-                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VIEW_AI_VOICE is not switched");
-                return;
-            }
-            /*处于主界面*/
-            if (curSliceId == VIEW_MAIN)
+            /*处于主界面 或者密码锁界面*/
+            if (curSliceId == VIEW_MAIN || curSliceId == VIEW_CODED_LOCK)
             {
                 /*被锁*/
                 if (uapi_dev_runtime_get_lock_status())
                 {
                     NativeAbility::GetInstance().EnterSlice(VIEW_CODED_LOCK);
+                    return;
                 }
+            }
+
+            if (curSliceId == VIEW_AI_VOICE) // 如果当前已在ai语音界面不做切换
+            {
+                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VIEW_AI_VOICE is not switched");
                 return;
             }
             // 全局切换到Ai语音界面
@@ -231,6 +232,18 @@ namespace OHOS
 
         if (display_api->get_screen_state() == SCREEN_ON)
         {
+            uint16_t curSliceId = NativeAbility::GetInstance().GetCurSliceId();
+            /*处于主界面 或者密码锁界面*/
+            if (curSliceId == VIEW_MAIN || curSliceId == VIEW_CODED_LOCK)
+            {
+                /*被锁*/
+                if (uapi_dev_runtime_get_lock_status())
+                {
+                    NativeAbility::GetInstance().EnterSlice(VIEW_CODED_LOCK);
+                    return;
+                }
+            }
+
             AiModelsModel &aiModelsModel = AiModelsModel::GetInstance();
             if (!aiModelsModel.ChangeAiModel())
             {
@@ -267,6 +280,18 @@ namespace OHOS
         }
         if (display_api->get_screen_state() == SCREEN_ON)
         {
+            uint16_t curSliceId = NativeAbility::GetInstance().GetCurSliceId();
+            /*处于主界面 或者密码锁界面*/
+            if (curSliceId == VIEW_MAIN || curSliceId == VIEW_CODED_LOCK)
+            {
+                /*被锁*/
+                if (uapi_dev_runtime_get_lock_status())
+                {
+                    NativeAbility::GetInstance().EnterSlice(VIEW_CODED_LOCK);
+                    return;
+                }
+            }
+
             // 切换到显示方式界面
             NativeAbility::GetInstance().EnterSlice(VIEW_AI_MODELS);
         }
index dee44d8..78165a0 100644 (file)
@@ -28,10 +28,6 @@ extern "C"
         VIEW_INVALID,
         VIEW_SAVEBAT,      // 省电模式
         VIEW_TRAININGCRAD, // 训练卡片
-        VIEW_TEST,
-#ifdef SUPPORT_ALIPAY_SEC
-        VIEW_MAIN_ALIPAY,
-#endif
     };
     static std::list<ScreenStatusNotifyCallback> g_callback;
     static void ChangeToHomeView(void)
@@ -71,18 +67,14 @@ extern "C"
                 /*密码锁开关被打开*/
                 if (OHOS::ConfigModel::GetInstance()->get_configData_int(OHOS::ConfigModel::CONFIGMODEL_ITEM_PASSWORD_SWITCH))
                 {
-                    /*处于关闭密码锁状态*/
-                    if (uapi_dev_runtime_get_lock_status() == 0)
-                    {
-                        /*重新进入一次主界面*/
-                        OHOS::NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN);
-                        // 切换回主表盘页面
-                        OHOS::MainViewSample::GetInstance()->SwitchToClockPage();
-                        /*上锁*/
-                        uapi_dev_runtime_set_lock_status(1);
-                        /*设置表盘状态*/
-                        OHOS::MainModel::GetInstance().setDialState(OHOS::DialState::LOCK, true);
-                    }
+                    /*重新进入一次主界面*/
+                    OHOS::NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN);
+                    // 切换回主表盘页面
+                    OHOS::MainViewSample::GetInstance()->SwitchToClockPage();
+                    /*上锁*/
+                    uapi_dev_runtime_set_lock_status(1);
+                    /*设置表盘状态*/
+                    OHOS::MainModel::GetInstance().setDialState(OHOS::DialState::LOCK, true);
                 }
             }
         }