!4571 应用状态优化

Merge pull request !4571 from jerry/master
This commit is contained in:
openharmony_ci
2023-01-18 09:29:49 +00:00
committed by Gitee
17 changed files with 24 additions and 31 deletions
@@ -23,8 +23,7 @@ const std::string APP_MGR_SERVICE_NAME = "AppMgrService";
} // namespace Constants
enum class ApplicationState {
APP_STATE_BEGIN = 0,
APP_STATE_CREATE = APP_STATE_BEGIN,
APP_STATE_CREATE = 0,
APP_STATE_READY,
APP_STATE_FOREGROUND,
APP_STATE_FOCUS,
@@ -34,8 +33,7 @@ enum class ApplicationState {
};
enum class AbilityState {
ABILITY_STATE_BEGIN = 0,
ABILITY_STATE_CREATE = ABILITY_STATE_BEGIN,
ABILITY_STATE_CREATE = 0,
ABILITY_STATE_READY,
ABILITY_STATE_FOREGROUND,
ABILITY_STATE_FOCUS,
@@ -24,8 +24,7 @@
namespace OHOS {
namespace AppExecFwk {
enum class AppProcessState {
APP_STATE_BEGIN = 0,
APP_STATE_CREATE = APP_STATE_BEGIN,
APP_STATE_CREATE = 0,
APP_STATE_READY,
APP_STATE_FOREGROUND,
APP_STATE_FOCUS,
@@ -183,7 +183,7 @@ private:
int32_t connectionState_ = 0;
int64_t eventId_ = 0;
bool isTerminating_ = false;
AbilityState state_ = AbilityState::ABILITY_STATE_BEGIN;
AbilityState state_ = AbilityState::ABILITY_STATE_CREATE;
bool isFocused_ = false;
std::shared_ptr<AbilityInfo> info_;
std::shared_ptr<AAFwk::Want> want_ = nullptr;
@@ -90,11 +90,11 @@ bool DoSomethingInterestingWithMyAPI(const char* data, size_t size)
appMgrServiceInner->GetAppRunningRecordByAbilityToken(token);
appMgrServiceInner->AbilityTerminated(token);
appMgrServiceInner->GetAppRunningRecordByAppRecordId(recordId);
ApplicationState state = ApplicationState::APP_STATE_BEGIN;
ApplicationState state = ApplicationState::APP_STATE_CREATE;
bool needNotifyApp = *data % ENABLE;
appMgrServiceInner->OnAppStateChanged(appRecord, state, needNotifyApp);
std::shared_ptr<AbilityRunningRecord> ability;
AppExecFwk::AbilityState abilityState = AppExecFwk::AbilityState::ABILITY_STATE_BEGIN;
AppExecFwk::AbilityState abilityState = AppExecFwk::AbilityState::ABILITY_STATE_CREATE;
appMgrServiceInner->OnAbilityStateChanged(ability, abilityState);
std::string appName(data, size);
uint32_t startFlags = GetU32Data(data);
@@ -96,7 +96,7 @@ bool DoSomethingInterestingWithMyAPI(const char* data, size_t size)
appRecord->SetJointUserId(jointUserId);
int32_t uid = static_cast<int32_t>(GetU32Data(data));
appRecord->SetUid(uid);
ApplicationState state = ApplicationState::APP_STATE_BEGIN;
ApplicationState state = ApplicationState::APP_STATE_CREATE;
appRecord->SetState(state);
std::weak_ptr<AppMgrServiceInner> inner;
appRecord->SetAppMgrServiceInner(inner);
@@ -97,7 +97,7 @@ bool DoSomethingInterestingWithMyAPI(const char* data, size_t size)
int32_t level = static_cast<int32_t>(GetU32Data(data));
appRecord->ScheduleMemoryLevel(level);
appRecord->LowMemoryWarning();
AppExecFwk::AbilityState abilityState = AppExecFwk::AbilityState::ABILITY_STATE_BEGIN;
AppExecFwk::AbilityState abilityState = AppExecFwk::AbilityState::ABILITY_STATE_CREATE;
bool isAbility = *data % ENABLE;
appRecord->StateChangedNotifyObserver(ability, static_cast<int32_t>(abilityState), isAbility);
bool isFocus = *data % ENABLE;
@@ -58,7 +58,7 @@ bool DoSomethingInterestingWithMyAPI(const char* data, size_t size)
std::cout << "Get ability token failed." << std::endl;
return false;
}
AppExecFwk::AbilityState state = AppExecFwk::AbilityState::ABILITY_STATE_BEGIN;
AppExecFwk::AbilityState state = AppExecFwk::AbilityState::ABILITY_STATE_CREATE;
if (appMgrClient->UpdateAbilityState(token, state) != AppMgrResultCode::RESULT_OK) {
return false;
@@ -166,7 +166,7 @@ public:
}
AppProcessData processData;
processData.pid = 1;
processData.appState = ApplicationState::APP_STATE_BEGIN;
processData.appState = ApplicationState::APP_STATE_CREATE;
callback_->OnAppStateChanged(processData);
}
@@ -175,7 +175,7 @@ public:
if (!callback_) {
return;
}
AbilityState st = AbilityState::ABILITY_STATE_BEGIN;
AbilityState st = AbilityState::ABILITY_STATE_CREATE;
callback_->OnAbilityRequestDone(token, st);
}
@@ -126,7 +126,7 @@ public:
}
AppProcessData processData;
processData.pid = 1;
processData.appState = ApplicationState::APP_STATE_BEGIN;
processData.appState = ApplicationState::APP_STATE_CREATE;
callback_->OnAppStateChanged(processData);
}
@@ -135,7 +135,7 @@ public:
if (!callback_) {
return;
}
AbilityState st = AbilityState::ABILITY_STATE_BEGIN;
AbilityState st = AbilityState::ABILITY_STATE_CREATE;
callback_->OnAbilityRequestDone(token, st);
}
@@ -279,7 +279,7 @@ HWTEST_F(AmsAbilityRunningRecordModuleTest, AddAbilityRunningRecord_002, TestSiz
EXPECT_TRUE(caseAbilityRunningRecord == nullptr);
caseAbilityRunningRecord = moduleRecord->GetAbilityRunningRecord(ABILITY_RECORD_NAME + "_" + std::to_string(i));
EXPECT_EQ(caseAbilityRunningRecord, appRunningRecord->GetAbilityRunningRecordByToken(token));
EXPECT_EQ(caseAbilityRunningRecord->GetState(), AbilityState::ABILITY_STATE_BEGIN);
EXPECT_EQ(caseAbilityRunningRecord->GetState(), AbilityState::ABILITY_STATE_CREATE);
}
HILOG_INFO("AddAbilityRunningRecord_002 end");
}
@@ -353,7 +353,7 @@ HWTEST_F(AmsAbilityRunningRecordModuleTest, UpdateAbilityRunningRecord_002, Test
caseAbilityRunningRecord = moduleRecord->GetAbilityRunningRecord(ABILITY_RECORD_NAME + "_" + std::to_string(i));
EXPECT_EQ(caseAbilityRunningRecord, appRunningRecord->GetAbilityRunningRecordByToken(token));
appRunningRecord->UpdateAbilityState(token, AbilityState::ABILITY_STATE_END);
EXPECT_EQ(caseAbilityRunningRecord->GetState(), AbilityState::ABILITY_STATE_BEGIN);
EXPECT_EQ(caseAbilityRunningRecord->GetState(), AbilityState::ABILITY_STATE_CREATE);
}
HILOG_INFO("UpdateAbilityRunningRecord_002 end");
}
@@ -199,7 +199,7 @@ HWTEST_F(AmsIpcAmsmgrModuleTest, ExcuteAmsmgrIPCInterface_003, TestSize.Level3)
mockMockAppMgr->Wait();
sptr<OHOS::IRemoteObject> token = new MockAbilityToken();
AbilityState abilityState = AbilityState::ABILITY_STATE_BEGIN;
AbilityState abilityState = AbilityState::ABILITY_STATE_CREATE;
for (int i = 0; i < COUNT; i++) {
EXPECT_CALL(*mockAppMgrServiceInner, UpdateAbilityState(_, _))
@@ -1560,8 +1560,6 @@ HWTEST_F(AmsAppLifeCycleTest, AbilityStateChanged001, TestSize.Level1)
EXPECT_NE(ability, nullptr);
serviceInner_->RegisterAppStateCallback(callback);
EXPECT_CALL(*mockCallback, OnAbilityRequestDone(_, _)).Times(1);
serviceInner_->OnAbilityStateChanged(ability, AbilityState::ABILITY_STATE_BEGIN);
EXPECT_CALL(*mockCallback, OnAbilityRequestDone(_, _)).Times(1);
serviceInner_->OnAbilityStateChanged(ability, AbilityState::ABILITY_STATE_CREATE);
EXPECT_CALL(*mockCallback, OnAbilityRequestDone(_, _)).Times(1);
serviceInner_->OnAbilityStateChanged(ability, AbilityState::ABILITY_STATE_READY);
@@ -1594,8 +1592,6 @@ HWTEST_F(AmsAppLifeCycleTest, AppStateChanged001, TestSize.Level1)
EXPECT_NE(appRecord, nullptr);
serviceInner_->RegisterAppStateCallback(callback);
EXPECT_CALL(*mockCallback, OnAppStateChanged(_)).Times(1);
serviceInner_->OnAppStateChanged(appRecord, ApplicationState::APP_STATE_BEGIN);
EXPECT_CALL(*mockCallback, OnAppStateChanged(_)).Times(1);
serviceInner_->OnAppStateChanged(appRecord, ApplicationState::APP_STATE_CREATE);
EXPECT_CALL(*mockCallback, OnAppStateChanged(_)).Times(1);
serviceInner_->OnAppStateChanged(appRecord, ApplicationState::APP_STATE_READY);
@@ -211,7 +211,7 @@ HWTEST_F(AmsAppMgrClientTest, AppMgrClient_005, TestSize.Level1)
.Times(1)
.WillOnce(Return(amsMgrScheduler));
AbilityState state = AbilityState::ABILITY_STATE_BEGIN;
AbilityState state = AbilityState::ABILITY_STATE_CREATE;
EXPECT_EQ(AppMgrResultCode::RESULT_OK, client_->UpdateAbilityState(token_, state));
HILOG_INFO("ams_app_mgr_client_test_005 end");
}
@@ -227,7 +227,7 @@ HWTEST_F(AmsAppMgrClientTest, AppMgrClient_005, TestSize.Level1)
HWTEST_F(AmsAppMgrClientTest, AppMgrClient_006, TestSize.Level1)
{
HILOG_INFO("ams_app_mgr_client_test_006 start");
AbilityState state = AbilityState::ABILITY_STATE_BEGIN;
AbilityState state = AbilityState::ABILITY_STATE_CREATE;
EXPECT_EQ(AppMgrResultCode::ERROR_SERVICE_NOT_CONNECTED, client_->UpdateAbilityState(token_, state));
HILOG_INFO("ams_app_mgr_client_test_006 end");
}
@@ -607,7 +607,7 @@ HWTEST_F(AmsAppRunningRecordTest, AddModules_001, TestSize.Level1)
HWTEST_F(AmsAppRunningRecordTest, UpdateAppRunningRecord_001, TestSize.Level1)
{
auto record = GetTestAppRunningRecord();
for (ApplicationState state = ApplicationState::APP_STATE_BEGIN; state < ApplicationState::APP_STATE_END;
for (ApplicationState state = ApplicationState::APP_STATE_CREATE; state < ApplicationState::APP_STATE_END;
state = (ApplicationState)(static_cast<std::underlying_type<ApplicationState>::type>(state) + 1)) {
record->SetState(state);
EXPECT_EQ(record->GetState(), state);
@@ -101,7 +101,7 @@ HWTEST_F(AmsAppStateCallBackTest, OnRemoteRequest_002, TestSize.Level1)
HWTEST_F(AmsAppStateCallBackTest, OnAbilityRequestDone_001, TestSize.Level1)
{
sptr<IRemoteObject> token = nullptr;
AbilityState state = AbilityState::ABILITY_STATE_BEGIN;
AbilityState state = AbilityState::ABILITY_STATE_CREATE;
sptr<AppStateCallbackHost> host(new AppStateCallbackHost());
host->OnAbilityRequestDone(token, state);
@@ -176,7 +176,7 @@ HWTEST_F(AmsMgrSchedulerTest, AmsMgrScheduler_003, TestSize.Level1)
std::make_unique<AmsMgrScheduler>(mockAppMgrServiceInner, amsEventHandler);
sptr<IRemoteObject> token = new MockAbilityToken();
AbilityState abilityState = AbilityState::ABILITY_STATE_BEGIN;
AbilityState abilityState = AbilityState::ABILITY_STATE_CREATE;
EXPECT_CALL(*mockAppMgrServiceInner, UpdateAbilityState(_, _))
.WillOnce(InvokeWithoutArgs(mockAppMgrServiceInner.get(), &MockAppMgrServiceInner::Post));
@@ -431,7 +431,7 @@ HWTEST_F(AppSchedulerTest, AppScheduler_oprator_012, TestSize.Level1)
EXPECT_EQ(AppAbilityState::ABILITY_STATE_UNDEFINED,
DelayedSingleton<AppScheduler>::GetInstance()->ConvertToAppAbilityState(
static_cast<int>(AppExecFwk::AbilityState::ABILITY_STATE_BEGIN)));
static_cast<int>(AppExecFwk::AbilityState::ABILITY_STATE_CREATE)));
}
/*
@@ -576,7 +576,7 @@ HWTEST_F(AppSchedulerTest, AppScheduler_UpdateAbilityState_001, TestSize.Level1)
{
DelayedSingleton<AppScheduler>::GetInstance()->appMgrClient_ = std::make_unique<AppExecFwk::AppMgrClient>();
sptr<IRemoteObject> token = nullptr;
AppExecFwk::AbilityState state = AppExecFwk::AbilityState::ABILITY_STATE_BEGIN;
AppExecFwk::AbilityState state = AppExecFwk::AbilityState::ABILITY_STATE_CREATE;
DelayedSingleton<AppScheduler>::GetInstance()->UpdateAbilityState(token, state);
}
@@ -624,7 +624,7 @@ HWTEST_F(AppSchedulerTest, AppScheduler_KillProcessesByUserId_001, TestSize.Leve
HWTEST_F(AppSchedulerTest, AppScheduler_OnAbilityRequestDone_001, TestSize.Level1)
{
sptr<IRemoteObject> token = nullptr;
AppExecFwk::AbilityState state = AppExecFwk::AbilityState::ABILITY_STATE_BEGIN;
AppExecFwk::AbilityState state = AppExecFwk::AbilityState::ABILITY_STATE_CREATE;
DelayedSingleton<AppScheduler>::GetInstance()->callback_ = appStateMock_;
DelayedSingleton<AppScheduler>::GetInstance()->OnAbilityRequestDone(token, state);
}