From 705b5fbb91dfbe086f717c75ee6ea650894f59f1 Mon Sep 17 00:00:00 2001 From: zhounanzhao Date: Thu, 7 Dec 2023 07:33:46 +0000 Subject: [PATCH] =?UTF-8?q?=E7=9B=91=E5=90=AC=E5=BA=94=E7=94=A8=E9=80=80?= =?UTF-8?q?=E5=87=BA=E4=BD=BF=E7=94=A8OnAppStopped?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhounanzhao --- services/common/include/app_state_observer.h | 2 +- services/common/src/app_state_observer.cpp | 18 +++++++----------- .../test/unittest/bgtask_misc_unit_test.cpp | 10 +++++----- 3 files changed, 13 insertions(+), 17 deletions(-) diff --git a/services/common/include/app_state_observer.h b/services/common/include/app_state_observer.h index b9d2dcd9..1c48e8ad 100644 --- a/services/common/include/app_state_observer.h +++ b/services/common/include/app_state_observer.h @@ -34,7 +34,7 @@ class AppStateObserver : public AppExecFwk::ApplicationStateObserverStub { public: void OnAbilityStateChanged(const AppExecFwk::AbilityStateData &abilityStateData) override; void OnProcessDied(const AppExecFwk::ProcessData &processData) override; - void OnApplicationStateChanged(const AppExecFwk::AppStateData &appStateData) override; + void OnAppStopped(const AppExecFwk::AppStateData &appStateData) override; void SetEventHandler(const std::shared_ptr &handler); void SetBgContinuousTaskMgr(const std::shared_ptr &bgContinuousTaskMgr); void SetBgEfficiencyResourcesMgr(const std::shared_ptr &resourceMgr); diff --git a/services/common/src/app_state_observer.cpp b/services/common/src/app_state_observer.cpp index 6288a751..d368f953 100644 --- a/services/common/src/app_state_observer.cpp +++ b/services/common/src/app_state_observer.cpp @@ -104,24 +104,20 @@ void AppStateObserver::OnProcessDiedEfficiencyRes(const AppExecFwk::ProcessData bgEfficiencyResourcesMgr->RemoveProcessRecord(processData.uid, processData.pid, processData.bundleName); } -void AppStateObserver::OnApplicationStateChanged(const AppExecFwk::AppStateData &appStateData) +void AppStateObserver::OnAppStopped(const AppExecFwk::AppStateData &appStateData) { if (!ValidateAppStateData(appStateData)) { - BGTASK_LOGD("%{public}s : validate app state data failed!", __func__); + BGTASK_LOGE("%{public}s : validate app state data failed!", __func__); return; } auto uid = appStateData.uid; auto bundleName = appStateData.bundleName; - auto state = appStateData.state; - if (state == static_cast(AppExecFwk::ApplicationState::APP_STATE_TERMINATED) || state == - static_cast(AppExecFwk::ApplicationState::APP_STATE_END)) { - auto bgEfficiencyResourcesMgr = bgEfficiencyResourcesMgr_.lock(); - if (!bgEfficiencyResourcesMgr) { - BGTASK_LOGE("bgEfficiencyResourcesMgr is null"); - return; - } - bgEfficiencyResourcesMgr->RemoveAppRecord(uid, bundleName, false); + auto bgEfficiencyResourcesMgr = bgEfficiencyResourcesMgr_.lock(); + if (!bgEfficiencyResourcesMgr) { + BGTASK_LOGE("bgEfficiencyResourcesMgr is null"); + return; } + bgEfficiencyResourcesMgr->RemoveAppRecord(uid, bundleName, false); } inline bool AppStateObserver::ValidateAppStateData(const AppExecFwk::AppStateData &appStateData) diff --git a/services/test/unittest/bgtask_misc_unit_test.cpp b/services/test/unittest/bgtask_misc_unit_test.cpp index 0106c2cc..2c2d3deb 100644 --- a/services/test/unittest/bgtask_misc_unit_test.cpp +++ b/services/test/unittest/bgtask_misc_unit_test.cpp @@ -114,16 +114,16 @@ HWTEST_F(BgTaskMiscUnitTest, AppStateObserverTest_001, TestSize.Level1) abilityStateData.abilityState = static_cast(AppExecFwk::AbilityState::ABILITY_STATE_TERMINATED); appStateObserver->OnAbilityStateChanged(abilityStateData); AppExecFwk::AppStateData appStateData = AppExecFwk::AppStateData(); - appStateObserver->OnApplicationStateChanged(appStateData); + appStateObserver->OnAppStopped(appStateData); appStateData.uid = 1; appStateData.bundleName = "bundleName"; - appStateObserver->OnApplicationStateChanged(appStateData); + appStateObserver->OnAppStopped(appStateData); appStateData.state = static_cast(AppExecFwk::ApplicationState::APP_STATE_TERMINATED); - appStateObserver->OnApplicationStateChanged(appStateData); + appStateObserver->OnAppStopped(appStateData); appStateData.state = static_cast(AppExecFwk::ApplicationState::APP_STATE_END); - appStateObserver->OnApplicationStateChanged(appStateData); + appStateObserver->OnAppStopped(appStateData); appStateObserver->SetBgEfficiencyResourcesMgr(std::make_shared()); - appStateObserver->OnApplicationStateChanged(appStateData); + appStateObserver->OnAppStopped(appStateData); EXPECT_TRUE(appStateObserver->Subscribe()); SleepForFC(); EXPECT_TRUE(appStateObserver->Unsubscribe()); -- Gitee