From 8c03d59c2b038009e07e5f80bd8c948bd843a7f6 Mon Sep 17 00:00:00 2001 From: chengwang Date: Thu, 28 Aug 2025 21:34:24 +0800 Subject: [PATCH] modify cellular data power improvement Signed-off-by: chengwang --- BUILD.gn | 13 +++++++++---- frameworks/js/napi/src/cellular_data_handler.cpp | 6 +++--- services/include/cellular_data_handler.h | 1 - services/src/cellular_data_controller.cpp | 2 +- 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/BUILD.gn b/BUILD.gn index 4aea1752..c3a0f6ad 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -18,6 +18,7 @@ declare_args() { !defined(global_parts_info.hiviewdfx_hicollie)) { telephony_cellular_data_hicollie_able = false } + cellular_data_feature_base_power_improvement = false } telephony_extra_defines = [] @@ -32,10 +33,6 @@ if (defined(global_parts_info) && TELEPHONY_EXT_WRAPPER_ROOT = "services/telephony_ext_wrapper" DATA_SERVICE_EXT_WRAPPER_ROOT = "services/data_service_ext_wrapper" -declare_args() { - cellular_data_feature_base_power_improvement = true -} - ohos_shared_library("tel_cellular_data") { sanitize = { cfi = true @@ -168,6 +165,10 @@ ohos_shared_library("tel_cellular_data") { defines += telephony_extra_defines + if (cellular_data_feature_base_power_improvement ) { + defines += [ "BASE_POWER_IMPROVEMENT" ] + } + part_name = "cellular_data" subsystem_name = "telephony" } @@ -282,6 +283,10 @@ ohos_static_library("tel_cellular_data_static") { defines += [ "HICOLLIE_ENABLE" ] } + if (cellular_data_feature_base_power_improvement ) { + defines += [ "BASE_POWER_IMPROVEMENT" ] + } + if (defined(global_parts_info) && defined(global_parts_info.communication_netmanager_enhanced)) { defines += [ "OHOS_BUILD_ENABLE_DATA_SERVICE_EXT" ] diff --git a/frameworks/js/napi/src/cellular_data_handler.cpp b/frameworks/js/napi/src/cellular_data_handler.cpp index 88879940..4b7541ae 100644 --- a/frameworks/js/napi/src/cellular_data_handler.cpp +++ b/frameworks/js/napi/src/cellular_data_handler.cpp @@ -1065,9 +1065,9 @@ void CellularDataHandler::HandleDisconnectDataCompleteForMmsType(sptr RemoveEvent(CellularDataEventCode::MSG_RESUME_DATA_PERMITTED_TIMEOUT); } #ifdef BASE_POWER_IMPROVEMENT - if (strEnterSubscriber_ != nullptr && strEnterSubscriber_->powerSaveFlag_) { - strEnterSubscriber_->FinishTelePowerEvent(); - strEnterSubscriber_->powerSaveFlag_ = false; + if (strEnterSubscriber_ != nullptr && strEnterSubscriber_->GetPowerSaveFlag()) { + strEnterSubscriber_->FinishTelePowerCommonEvent(); + strEnterSubscriber_->SetPowerSaveFlag(false); } #endif } diff --git a/services/include/cellular_data_handler.h b/services/include/cellular_data_handler.h index a3174053..93e1ee7e 100644 --- a/services/include/cellular_data_handler.h +++ b/services/include/cellular_data_handler.h @@ -235,7 +235,6 @@ private: uint64_t defaultApnActTime_ = 0; uint64_t internalApnActTime_ = 0; int32_t retryCreateApnTimes_ = 0; - using Fun = std::function; std::map eventIdMap_ { { RadioEvent::RADIO_PS_CONNECTION_ATTACHED, diff --git a/services/src/cellular_data_controller.cpp b/services/src/cellular_data_controller.cpp index 22e83fb8..8c24d07a 100644 --- a/services/src/cellular_data_controller.cpp +++ b/services/src/cellular_data_controller.cpp @@ -385,7 +385,7 @@ void CellularDataController::SystemAbilityStatusChangeListener::OnAddSystemAbili bool subscribeResult = EventFwk::CommonEventManager::SubscribeCommonEvent(handler_); TELEPHONY_LOGI("subscribeResult = %{public}d", subscribeResult); #ifdef BASE_POWER_IMPROVEMENT - if (system::GetBoolParameter("const.vendor.ril.power.feature_tele_power", false)) { + if (system::GetBoolParameter("const.vendor.ril.power.feature_tele_power", false)) { handler_->SubscribeTelePowerEvent(); } #endif -- Gitee