From: xue <2144439972@qq.com> Date: Thu, 18 Sep 2025 14:40:25 +0000 (+0800) Subject: 修复按键问题 X-Git-Tag: leiniao_debug_1.0.0_20250922_020716~46^2~8 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=4beb3e3b7a74e744cce705a72ccfe18711011f69;p=mirrors%2FFD230.git 修复按键问题 --- diff --git a/code/sdk/application/brandy/brandy_standard/input_app.c b/code/sdk/application/brandy/brandy_standard/input_app.c index f380147f3..80da69a34 100644 --- a/code/sdk/application/brandy/brandy_standard/input_app.c +++ b/code/sdk/application/brandy/brandy_standard/input_app.c @@ -233,18 +233,20 @@ static void button_report_event(button_id_t id, event_button_t event) break; case BUTTON1_CLICKUP: button_report_event_to_gui(id, 0); // 0:release + break; // #ifdef BOARD_U8 case BUTTON2_PRESS: button_report_event_to_gui(id, 1); // 1:press break; case BUTTON2_CLICKUP: button_report_event_to_gui(id, 0); // 0:release - + break; case BUTTON3_PRESS: button_report_event_to_gui(id, 1); // 1:press break; case BUTTON3_CLICKUP: button_report_event_to_gui(id, 0); // 0:release + break; // #endif default: break; diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp index 25bbe9a50..377c38565 100644 --- a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp @@ -25,6 +25,9 @@ #include "service_id_define.h" #include "dock/input_device.h" #include "custom_runtime.h" +#include "input_app.h" +#include "wearable_log.h" + #include "ln_api.h" namespace OHOS { @@ -35,6 +38,15 @@ namespace OHOS // 当前Presenter属性实例化的内存指针 static ThunderBirdPresenter *g_pThunderBirdPresenter = nullptr; + // // VENDOR_DOWN 长按5秒回调函数 + // static void func_button_callback_vendor_down_long_press_5s(void) + // { + // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VENDOR_DOWN long press 5s callback triggered"); + // // 可以在这里添加具体的功能实现 + // // 例如:切换到特定界面或执行特定操作 + // // NativeAbility::GetInstance().SwitchSlice(VIEW_SOME_SPECIAL_VIEW); + // } + ThunderBirdPresenter::ThunderBirdPresenter() { g_pThunderBirdPresenter = this; @@ -55,7 +67,11 @@ namespace OHOS void ThunderBirdPresenter::OnStart() { Presenter::OnStart(); + + // 注册 VENDOR_DOWN 长按5秒事件 + // uapi_button_register_event_cb(func_button_callback_vendor_down_long_press_5s, BUTTON3_LONGPRESS_5S); } + void ThunderBirdPresenter::OnResume() { @@ -105,7 +121,7 @@ namespace OHOS return true; } /*************************语音键*************************/ - if(keyID == static_cast(ZliteKeyCode::ZLITE_KEY_FUNC) && keyState == 0 && uapi_get_screen_state() == 0) + if(keyID == static_cast(ZliteKeyCode::ZLITE_KEY_FUNC) && keyState == 1 && uapi_get_screen_state() == 0) { if(ThunderBirdModel::GetInstance()->CheckBindingStatus() == ThunderBirdModel::BindingStatus::NOT_BOUND) { @@ -131,7 +147,7 @@ namespace OHOS } /*************************VENDOR_UP键*************************/ - if (keyID == static_cast(ZliteKeyCode::ZLITE_KEY_VENDOR_UP) && keyState == 0 && uapi_get_screen_state() == 0) + if (keyID == static_cast(ZliteKeyCode::ZLITE_KEY_VENDOR_UP) && keyState == 1 && uapi_get_screen_state() == 0) { if(ThunderBirdModel::GetInstance()->CheckBindingStatus() == ThunderBirdModel::BindingStatus::NOT_BOUND) { @@ -204,31 +220,31 @@ namespace OHOS || ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_UPDATE_NOW) // 确认升级,先判断电量、网络、内存 { if(ThunderBirdMainView::GetInstance()->Batteryvalue <= 50)//低电量 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_LOW_BATTERY); - } + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_LOW_BATTERY); + } else if(uapi_dev_runtime_get_cat1_signal() == 99)//无网络 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_NETWORK_ERROR); - } + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_NETWORK_ERROR); + } else if(0)//获取内存状态 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_MEMORY_ERROR); - } + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_MEMORY_ERROR); + } else - { + { ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_COUNTDOWN); - } + } - } + } else if(currentSubView == ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_COUNTDOWN) // 更新倒计时进入更新中 - { + { ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_OTAVIEW, ThunderBirdOtaView::THUNDERBIRD_OTAVIEW_UPDATING); do_ln_http_server_send_data(LN_HTTP_SERVICE_CMD_OTA_DOWNLOAD, NULL, 0);//开始升级 - } + } return true; - } - // 哄睡界面导航 + } + // 哄睡界面导航 else if(currentView == THUNDERBIRD_LULLABYVIEW) { if(currentSubView == ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_1) @@ -254,62 +270,62 @@ namespace OHOS } return true; } - // 提醒界面导航 - else if(currentView == THUNDERBIRD_REMINDERVIEW) - { - if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_VOLUME) // 音量调节 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_TASK_REMINDER); - } - else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_TASK_REMINDER) // 事项提醒 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_NETWORK_DISCONNECT); - } - else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_NETWORK_DISCONNECT) // 网络断开 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_LOW_BATTERY); - } - else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_LOW_BATTERY) // 电量不足 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGING); - } - else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGING) // 充电中 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGE_COMPLETE); - } - else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGE_COMPLETE) // 充电完成 - { - // 返回主界面 - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_ADJUSTVIEW, ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_BIND_SUCCESS); - } + // 提醒界面导航 + else if(currentView == THUNDERBIRD_REMINDERVIEW) + { + if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_VOLUME) // 音量调节 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_TASK_REMINDER); + } + else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_TASK_REMINDER) // 事项提醒 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_NETWORK_DISCONNECT); + } + else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_NETWORK_DISCONNECT) // 网络断开 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_LOW_BATTERY); + } + else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_LOW_BATTERY) // 电量不足 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGING); + } + else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGING) // 充电中 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_REMINDERVIEW, ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGE_COMPLETE); + } + else if(currentSubView == ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_CHARGE_COMPLETE) // 充电完成 + { + // 返回主界面 + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_ADJUSTVIEW, ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_BIND_SUCCESS); + } return true; - } - // 调节界面导航 - else if(currentView == THUNDERBIRD_ADJUSTVIEW) - { - if(currentSubView == ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_BIND_SUCCESS) // 绑定成功 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_ADJUSTVIEW, ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_WARNING); - } - else if(currentSubView == ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_WARNING) // 异常警告 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_ADJUSTVIEW, ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_NETWORK_CONNECTING); - } - else if(currentSubView == ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_NETWORK_CONNECTING) // 网络连接中 - { - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_SHUTDOWNVIEW, 0); - //ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_SHUTDOWNTESTVIEW, -1); - } + } + // 调节界面导航 + else if(currentView == THUNDERBIRD_ADJUSTVIEW) + { + if(currentSubView == ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_BIND_SUCCESS) // 绑定成功 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_ADJUSTVIEW, ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_WARNING); + } + else if(currentSubView == ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_WARNING) // 异常警告 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_ADJUSTVIEW, ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_NETWORK_CONNECTING); + } + else if(currentSubView == ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_NETWORK_CONNECTING) // 网络连接中 + { + ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_SHUTDOWNVIEW, 0); + //ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_SHUTDOWNTESTVIEW, -1); + } return true; } return true; } /*************************VENDOR_DOWN键*************************/ // 长按 VENDOR_DOWN 5秒 - if (keyID == static_cast(ZliteKeyCode::ZLITE_KEY_VENDOR_DOWN) && keyState == InputDevice::STATE_LONG_PRESS && uapi_get_screen_state() == 0) + if (keyID == static_cast(ZliteKeyCode::ZLITE_KEY_VENDOR_DOWN) && keyState == InputDevice::STATE_LONG_PRESS ) { // 长按5秒操作 - 可以在这里添加具体的功能 - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VENDOR_DOWN long press 5s detected"); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VENDOR_DOWN long press 5s detected - keyID=%d, keyState=%d", keyID, keyState); // 例如:切换到特定界面或执行特定操作 // NativeAbility::GetInstance().SwitchSlice(VIEW_SOME_SPECIAL_VIEW); return true;