mcu_hi3321_watch/tjd/ui/app/video_ctrl/TjdUiAppVideoCtrlPresenter.cpp
2025-05-26 20:15:20 +08:00

109 lines
3.4 KiB
C++

#include "TjdUiAppVideoCtrlPresenter.h"
#include "NativeAbility.h"
#include "TjdUiAppIds.h"
#include "dock/input_device.h"
#include "sys_config.h"
#include "TjdUiAppVideoCtrlView.h"
#include "TjdUiRegisterManager.h"
#ifdef __cplusplus
extern "C" {
#endif
#include "ble_api.h"
#include "ble_port_protocol.h"
// extern uint8_t g_server_id;
// extern uint8_t g_server_conn_id;
// extern uint16_t g_server_handle;
#ifdef __cplusplus
}
#endif
using namespace OHOS;
#define ENABLE_PRINT_INFO 1
#if ENABLE_PRINT_INFO
#define static_print_info(...) sys_ui_log_i(__VA_ARGS__) // 一般信息打印宏控制
#define static_print_warn(...) sys_ui_log_w(__VA_ARGS__) // 警告信息打印一般常开
#define static_print_error(...) sys_ui_log_e(__VA_ARGS__) // 错误信息打印一般常开
#define static_print_debug(...) sys_ui_log_d(__VA_ARGS__) // 调试信息打印
#else
#define static_print_info(...)
#define static_print_warn(...)
#define static_print_error(...)
#define static_print_debug(...)
#endif
namespace TJD {
// TJD_REGIST_NATIVE_MENU(TJD_APP_VIEW_VIDEO_CTRL, TjdUiAppVideoCtrlView, TjdUiAppVideoCtrlPresenter, IMG_MENU_LIST_MENU_VIDEO, STR_ID_24);
// void gatts_send_to_app(void)
// {
// gatts_ntf_ind_t param = {0};
// param.attr_handle = g_server_handle;
// uint8_t send_data[5] = {0x5a, 0x05, 0x0d, 0x03, 0x9d};
// param.value = send_data;
// param.value_len = sizeof(send_data);
// errcode_t ret = gatts_notify_indicate(g_server_id, g_server_conn_id, &param);
// if (ret != ERRCODE_SUCC) {
// static_print_error("gatts_notify_indicate faile ret(errcode_t): %x", ret);
// }
// static_print_debug("gatts_notify_indicate success ret(errcode_t): %x", ret);
// }
static TjdUiAppVideoCtrlPresenter *g_pv_AppVideoCtrlPresenter = nullptr;
TjdUiAppVideoCtrlPresenter::TjdUiAppVideoCtrlPresenter()
{
uint8_t hid_service_id = tjd_ble_get_hid_service_id();
uint16_t hid_srv_handle = tjd_ble_get_hid_srv_handle();
errcode_t ret = gatts_start_service(hid_service_id,hid_srv_handle);
static_print_debug("gatts_start_service ret(errcode_t): %x , hid_service_id : %u , hid_srv_handle : %u", ret, hid_service_id, hid_srv_handle);
g_pv_AppVideoCtrlPresenter = this;
}
TjdUiAppVideoCtrlPresenter::~TjdUiAppVideoCtrlPresenter()
{
uint8_t hid_service_id = tjd_ble_get_hid_service_id();
uint16_t hid_srv_handle = tjd_ble_get_hid_srv_handle();
errcode_t ret = gatts_stop_service(hid_service_id,hid_srv_handle);
static_print_debug("gatts_start_service ret(errcode_t): %x , hid_service_id : %u , hid_srv_handle : %u", ret, hid_service_id, hid_srv_handle);
g_pv_AppVideoCtrlPresenter = nullptr;
}
TjdUiAppVideoCtrlPresenter *TjdUiAppVideoCtrlPresenter::GetInstance(void) { return g_pv_AppVideoCtrlPresenter; }
void TjdUiAppVideoCtrlPresenter::OnStart()
{
TjdUiCommonOnKeyListener::GetInstance()->SetOnKeyActListener(this, KeyModelType::APP_KEY_TYPE);
}
void TjdUiAppVideoCtrlPresenter::OnStop()
{
TjdUiCommonOnKeyListener::GetInstance()->ClearOnKeyActListener(KeyModelType::APP_KEY_TYPE);
}
bool TjdUiAppVideoCtrlPresenter::OnKeyAct(OHOS::UIView &view, const OHOS::KeyEvent &event)
{
if(!TjdUiCommonOnKeyListener::CheckIsExitEvent(event)) {
return true;
}
ExitVideoCtrlView();
return false;
}
void TjdUiAppVideoCtrlPresenter::ExitVideoCtrlView(void)
{
OHOS::NativeAbility::GetInstance().ChangePreSlice();
// gatts_send_to_app();
}
} // namespace TJD