From: luozheng <1732036298@qq.com> Date: Sat, 30 Nov 2024 03:27:20 +0000 (+0800) Subject: 为解决第一次绑定进入视频表盘死机增加了投票(还是会死机),暂时用宏控制 X-Git-Tag: fd230_release_V1.3.102~7^2~6 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=6a9392524e891a2d04e54a13a5350ee89a5afa87;p=mirrors%2FFD230.git 为解决第一次绑定进入视频表盘死机增加了投票(还是会死机),暂时用宏控制 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp index 08772acea..35b075500 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp @@ -35,6 +35,7 @@ #include "sleep/include/SleepModel.h" #include "MainModel.h" #include "../../../../../../../drivers/peripheral/utils/custom_runtime.h" +#include "rebootandshutdown/include/RebootAndShutdownModelC.h" #if USE_OFFLINE_DIAL #include "DialViewGroup.h" @@ -95,7 +96,16 @@ namespace OHOS void MainPresenterSample::OnPause(void) {} - void MainPresenterSample::OnResume(void) {} + void MainPresenterSample::OnResume(void) + { + #if IS_SUPPORT_BIND_VOTE + if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) + { + uapi_remove_bind_vote();//页面已经展示后的调用逻辑。取消绑定投票 + ConfigModel::GetInstance()->SetisFirstTimeStart(false); + } + #endif + } void MainPresenterSample::OnStop(void) { diff --git a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModelC.h b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModelC.h new file mode 100644 index 000000000..9b3f7e055 --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModelC.h @@ -0,0 +1,21 @@ +#ifndef REBOOT_AND_SHUTDOWN_C_H +#define REBOOT_AND_SHUTDOWN_C_H + +#ifdef __cplusplus +#if __cplusplus +extern "C" +{ +#endif +#endif + +#define IS_SUPPORT_BIND_VOTE 0 + +void uapi_add_bind_vote(void); +void uapi_remove_bind_vote(void); + +#ifdef __cplusplus +#if __cplusplus +} +#endif +#endif +#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp index 94a35123d..1f600291b 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp @@ -2,11 +2,12 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-07-18 14:55:27 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-10-24 20:54:15 + * @LastEditTime: 2024-11-30 11:22:54 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp */ #include "rebootandshutdown/include/RebootAndShutdownModel.h" +#include "rebootandshutdown/include/RebootAndShutdownModelC.h" #include "rebootandshutdown/include/ShutDownImageAnimatorView.h" #include "wearable_log.h" #include "ConfigModel.h" @@ -25,6 +26,40 @@ #define DEBUGOUTPUT 1 extern "C" uint8_t uapi_dev_runtime_get_lock_status(void); + +#ifdef __cplusplus +extern "C" { +#endif +#include "pm.h" +#include "pm_veto.h" + +void uapi_add_bind_vote(void) +{ + uint8_t res = pm_veto_get_id_cnt(PM_ID_HEART); + if (res == 0) { + uapi_pm_add_sleep_veto(PM_ID_HEART); + } else { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_MAIN_SERVICE, + "uapi_add_bind_vote error"); + } + WEARABLE_LOGE(WEARABLE_LOG_MODULE_MAIN_SERVICE, + "投票成功,res:%d",res); +} +void uapi_remove_bind_vote(void) +{ + uint8_t res = pm_veto_get_id_cnt(PM_ID_HEART); + if (res == 1) { + uapi_pm_remove_sleep_veto(PM_ID_HEART); + } else { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_MAIN_SERVICE, + "uapi_remove_bind_vote error"); + } + WEARABLE_LOGE(WEARABLE_LOG_MODULE_MAIN_SERVICE, + "移除投票成功 success,res:%d",res); +} +#ifdef __cplusplus +} +#endif namespace OHOS { static uint16_t intercept_slice_ids[] = { @@ -54,10 +89,15 @@ namespace OHOS { if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) { - uapi_systemVolumeSet(VOLUME_50);//恢复出厂设置系统音量要设置50% - uapi_callVolumeSet(VOLUME_100);//恢复出厂设置通话音量要设置100% uapi_set_screen_on_api(); + #if IS_SUPPORT_BIND_VOTE + uapi_add_bind_vote();//绑定的时候投票防止系统进入深睡,导致绑定成功后进入视频表盘死机 + // ConfigModel::GetInstance()->SetisFirstTimeStart(false); + #else ConfigModel::GetInstance()->SetisFirstTimeStart(false); + #endif + uapi_systemVolumeSet(VOLUME_50);//恢复出厂设置系统音量要设置50% + uapi_callVolumeSet(VOLUME_100);//恢复出厂设置通话音量要设置100% NativeAbility::GetInstance().SetDefaultSliceId(VIEW_MAIN); NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN); } diff --git a/code/sdk/middleware/services/gui/uikit/ui/frameworks/components/ui_image_animator.cpp b/code/sdk/middleware/services/gui/uikit/ui/frameworks/components/ui_image_animator.cpp index 621ff5d88..586c3bb7e 100755 --- a/code/sdk/middleware/services/gui/uikit/ui/frameworks/components/ui_image_animator.cpp +++ b/code/sdk/middleware/services/gui/uikit/ui/frameworks/components/ui_image_animator.cpp @@ -113,7 +113,7 @@ void UIImageAnimatorView::SetImageAnimatorSrc(const ImageAnimatorInfo imageAnima void UIImageAnimatorView::ClearImagesCache() { - if (imageSrc_ != nullptr) { + if (imageSrc_ == nullptr) { return; }