#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, ¶m); // 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