From 9310bc860fd672896751ffe0a774fd2d868968ca Mon Sep 17 00:00:00 2001 From: caochunlei Date: Fri, 22 Apr 2022 16:38:23 +0800 Subject: [PATCH 1/4] caochunlei1@huawei.com Signed-off-by: caochunlei --- .../kits/ability/native/include/ability.h | 16 --- .../ability/native/include/ability_impl.h | 15 --- .../native/include/ability_impl_factory.h | 4 +- .../native/include/ability_local_record.h | 14 --- .../native/include/page_ability_impl.h | 13 +- .../kits/ability/native/src/ability.cpp | 30 +---- .../kits/ability/native/src/ability_impl.cpp | 24 ---- .../native/src/ability_impl_factory.cpp | 3 +- .../native/src/ability_local_record.cpp | 19 --- .../ability/native/src/ability_thread.cpp | 8 +- .../ability/native/src/page_ability_impl.cpp | 64 +--------- .../appkit/native/app/src/main_thread.cpp | 2 - .../include/lifecycle_state_info.h | 1 - services/abilitymgr/include/ability_record.h | 28 +---- .../include/ams_configuration_parameter.h | 7 +- .../src/ability_manager_service.cpp | 7 +- services/abilitymgr/src/ability_record.cpp | 115 +----------------- .../abilitymgr/src/lifecycle_state_info.cpp | 5 - .../abilitymgr/src/mission_list_manager.cpp | 2 - 19 files changed, 17 insertions(+), 360 deletions(-) diff --git a/frameworks/kits/ability/native/include/ability.h b/frameworks/kits/ability/native/include/ability.h index 56848ece06d..377fbd09085 100644 --- a/frameworks/kits/ability/native/include/ability.h +++ b/frameworks/kits/ability/native/include/ability.h @@ -483,22 +483,7 @@ public: * @return Returns the display orientation of the window. */ int GetDisplayOrientation() override; -#endif - - /** - * @description: Obtains api version based on ability. - * @return api version. - */ - int GetCompatibleVersion(); - /** - * @description: Set api version in an ability. - * @param compatibleVersion api version - * @return None. - */ - void SetCompatibleVersion(int compatibleVersion); - -#ifdef SUPPORT_GRAPHICS /** * @brief Called when a key is lone pressed. * @@ -1710,7 +1695,6 @@ private: bool bWindowFocus_ = false; bool showOnLockScreen_ = false; #endif - int compatibleVersion_ = 0; static const std::string SYSTEM_UI; static const std::string STATUS_BAR; diff --git a/frameworks/kits/ability/native/include/ability_impl.h b/frameworks/kits/ability/native/include/ability_impl.h index 0cc7687c48a..f2156a3fccb 100644 --- a/frameworks/kits/ability/native/include/ability_impl.h +++ b/frameworks/kits/ability/native/include/ability_impl.h @@ -48,20 +48,6 @@ public: std::shared_ptr &ability, std::shared_ptr &handler, const sptr &token, std::shared_ptr &contextDeal); - /** - * @brief Set if use new mission. - * - * @param useNewMission new mission flag. - */ - static void SetUseNewMission(bool useNewMission); - - /** - * @brief Get if use new mission. - * - * @return return true if use new mission. - */ - static bool IsUseNewMission(); - /** * @brief Connect the ability. and Calling information back to Ability. * @@ -362,7 +348,6 @@ public: bool IsStageBasedModel() const; - int GetCompatibleVersion(); #ifdef SUPPORT_GRAPHICS void AfterUnFocused(); void AfterFocused(); diff --git a/frameworks/kits/ability/native/include/ability_impl_factory.h b/frameworks/kits/ability/native/include/ability_impl_factory.h index 4223acd8c86..0945cb0c6c0 100644 --- a/frameworks/kits/ability/native/include/ability_impl_factory.h +++ b/frameworks/kits/ability/native/include/ability_impl_factory.h @@ -28,12 +28,10 @@ public: * @brief Create impl object based on abilitytype * * @param type AbilityType:PAGE/SERVICE/PROVIDER - * @param compatibleVersion api version * * @return AbilityImpl object */ - std::shared_ptr MakeAbilityImplObject(const std::shared_ptr &info, - int compatibleVersion); + std::shared_ptr MakeAbilityImplObject(const std::shared_ptr &info); }; } // namespace AppExecFwk } // namespace OHOS diff --git a/frameworks/kits/ability/native/include/ability_local_record.h b/frameworks/kits/ability/native/include/ability_local_record.h index 42acc4f4cbe..5b592e117e8 100644 --- a/frameworks/kits/ability/native/include/ability_local_record.h +++ b/frameworks/kits/ability/native/include/ability_local_record.h @@ -113,19 +113,6 @@ public: */ void SetAbilityThread(const sptr &abilityThread); - /** - * @description: Obtains api version based on ability record. - * @return api version. - */ - int GetCompatibleVersion(); - - /** - * @description: Set api version in an ability record. - * @param compatibleVersion api version - * @return None. - */ - void SetCompatibleVersion(int compatibleVersion); - void SetWant(const std::shared_ptr &want); const std::shared_ptr &GetWant(); @@ -136,7 +123,6 @@ private: std::shared_ptr handler_ = nullptr; std::shared_ptr abilityImpl_ = nullptr; // store abilityImpl sptr abilityThread_; - int compatibleVersion_ = 0; std::shared_ptr want_ = nullptr; }; } // namespace AppExecFwk diff --git a/frameworks/kits/ability/native/include/page_ability_impl.h b/frameworks/kits/ability/native/include/page_ability_impl.h index 912bc784039..95577d817b7 100644 --- a/frameworks/kits/ability/native/include/page_ability_impl.h +++ b/frameworks/kits/ability/native/include/page_ability_impl.h @@ -47,17 +47,6 @@ public: */ void HandleAbilityTransaction(const Want &want, const AAFwk::LifeCycleStateInfo &targetState) override; - /** - * @brief Handling the life cycle switching of PageAbility in switch. - * - * @param want Indicates the structure containing information about the ability. - * @param targetState The life cycle state to switch to. - * - * @return return true if the lifecycle transaction successfully, otherwise return false. - * - */ - bool AbilityTransaction(const Want &want, const AAFwk::LifeCycleStateInfo &targetState); - /** * @brief Handling the life cycle switching of PageAbility in switch. * @@ -67,7 +56,7 @@ public: * @return return true if the lifecycle transaction successfully, otherwise return false. * */ - bool AbilityTransactionNew(const Want &want, const AAFwk::LifeCycleStateInfo &targetState); + bool AbilityTransaction(const Want &want, const AAFwk::LifeCycleStateInfo &targetState); /** * @brief Execution the KeyDown callback of the ability diff --git a/frameworks/kits/ability/native/src/ability.cpp b/frameworks/kits/ability/native/src/ability.cpp index 66ecbc2645d..321265c06a9 100644 --- a/frameworks/kits/ability/native/src/ability.cpp +++ b/frameworks/kits/ability/native/src/ability.cpp @@ -818,14 +818,7 @@ void Ability::InitWindow(Rosen::WindowType winType, int32_t displayId, sptrInitWindow(winType, abilityContext_, sceneListener_, displayId, option); - } else { - std::shared_ptr context = nullptr; - sptr listener = nullptr; - abilityWindow_->InitWindow(winType, context, listener, displayId, option); - } + abilityWindow_->InitWindow(winType, abilityContext_, sceneListener_, displayId, option); } /** @@ -901,28 +894,7 @@ void Ability::SetShowOnLockScreen(bool showOnLockScreen) window->RemoveWindowFlag(Rosen::WindowFlag::WINDOW_FLAG_SHOW_WHEN_LOCKED); } } -#endif - -/** - * @description: Obtains api version based on ability. - * @return api version. - */ -int Ability::GetCompatibleVersion() -{ - return compatibleVersion_; -} -/** - * @description: Set api version in an ability. - * @param compatibleVersion api version - * @return None. - */ -void Ability::SetCompatibleVersion(int32_t compatibleVersion) -{ - compatibleVersion_ = compatibleVersion; -} - -#ifdef SUPPORT_GRAPHICS /** * @brief Called when a key is lone pressed. * diff --git a/frameworks/kits/ability/native/src/ability_impl.cpp b/frameworks/kits/ability/native/src/ability_impl.cpp index b4704828a86..c132aa14a7a 100644 --- a/frameworks/kits/ability/native/src/ability_impl.cpp +++ b/frameworks/kits/ability/native/src/ability_impl.cpp @@ -22,8 +22,6 @@ namespace OHOS { namespace AppExecFwk { -static bool g_useNewMission = false; -static bool g_isMissionFlagSetted = false; const std::string PERMISSION_KEY = "ohos.user.grant.permission"; const std::string GRANTED_RESULT_KEY = "ohos.user.grant.permission.result"; @@ -184,15 +182,6 @@ bool AbilityImpl::IsStageBasedModel() const return isStageBasedModel_; } -int AbilityImpl::GetCompatibleVersion() -{ - if (ability_) { - return ability_->GetCompatibleVersion(); - } - - return -1; -} - #ifdef SUPPORT_GRAPHICS void AbilityImpl::AfterUnFocused() { @@ -932,18 +921,5 @@ void AbilityImpl::NotifyContinuationResult(int32_t result) } ability_->OnCompleteContinuation(result); } - -void AbilityImpl::SetUseNewMission(bool useNewMission) -{ - if (!g_isMissionFlagSetted) { - g_isMissionFlagSetted = true; - g_useNewMission = useNewMission; - } -} - -bool AbilityImpl::IsUseNewMission() -{ - return g_useNewMission; -} } // namespace AppExecFwk } // namespace OHOS diff --git a/frameworks/kits/ability/native/src/ability_impl_factory.cpp b/frameworks/kits/ability/native/src/ability_impl_factory.cpp index 94601eb4501..909abfb1e3e 100644 --- a/frameworks/kits/ability/native/src/ability_impl_factory.cpp +++ b/frameworks/kits/ability/native/src/ability_impl_factory.cpp @@ -47,8 +47,7 @@ AbilityImplFactory::~AbilityImplFactory() * * @return AbilityImpl object */ -std::shared_ptr AbilityImplFactory::MakeAbilityImplObject(const std::shared_ptr &info, - int compatibleVersion) +std::shared_ptr AbilityImplFactory::MakeAbilityImplObject(const std::shared_ptr &info) { if (info == nullptr) { HILOG_ERROR("AbilityImplFactory::MakeAbilityImplObject is error nullptr == info "); diff --git a/frameworks/kits/ability/native/src/ability_local_record.cpp b/frameworks/kits/ability/native/src/ability_local_record.cpp index 057ea243ec1..36c37e761c6 100644 --- a/frameworks/kits/ability/native/src/ability_local_record.cpp +++ b/frameworks/kits/ability/native/src/ability_local_record.cpp @@ -133,25 +133,6 @@ void AbilityLocalRecord::SetAbilityThread(const sptr &abilityThre abilityThread_ = abilityThread; } -/** - * @description: Obtains api version based on ability record. - * @return api version. - */ -int AbilityLocalRecord::GetCompatibleVersion() -{ - return compatibleVersion_; -} - -/** - * @description: Set api version in an ability record. - * @param compatibleVersion api version - * @return None. - */ -void AbilityLocalRecord::SetCompatibleVersion(int32_t compatibleVersion) -{ - compatibleVersion_ = compatibleVersion; -} - void AbilityLocalRecord::SetWant(const std::shared_ptr &want) { want_ = want; diff --git a/frameworks/kits/ability/native/src/ability_thread.cpp b/frameworks/kits/ability/native/src/ability_thread.cpp index 4a17f18ac64..10966136780 100644 --- a/frameworks/kits/ability/native/src/ability_thread.cpp +++ b/frameworks/kits/ability/native/src/ability_thread.cpp @@ -225,7 +225,6 @@ void AbilityThread::Attach(std::shared_ptr &application, HILOG_ERROR("Attach ability failed, load ability failed."); return; } - ability->SetCompatibleVersion(abilityRecord->GetCompatibleVersion()); currentAbility_.reset(ability); token_ = abilityRecord->GetToken(); @@ -242,8 +241,7 @@ void AbilityThread::Attach(std::shared_ptr &application, // 3.new abilityImpl abilityImpl_ = - DelayedSingleton::GetInstance()->MakeAbilityImplObject(abilityRecord->GetAbilityInfo(), - abilityRecord->GetCompatibleVersion()); + DelayedSingleton::GetInstance()->MakeAbilityImplObject(abilityRecord->GetAbilityInfo()); if (abilityImpl_ == nullptr) { HILOG_ERROR("Attach ability failed, abilityImpl_ == nullptr."); return; @@ -400,7 +398,6 @@ void AbilityThread::Attach( HILOG_ERROR("AbilityThread::ability attach failed,load ability failed"); return; } - ability->SetCompatibleVersion(abilityRecord->GetCompatibleVersion()); currentAbility_.reset(ability); token_ = abilityRecord->GetToken(); @@ -417,8 +414,7 @@ void AbilityThread::Attach( // 3.new abilityImpl abilityImpl_ = - DelayedSingleton::GetInstance()->MakeAbilityImplObject(abilityRecord->GetAbilityInfo(), - abilityRecord->GetCompatibleVersion()); + DelayedSingleton::GetInstance()->MakeAbilityImplObject(abilityRecord->GetAbilityInfo()); if (abilityImpl_ == nullptr) { HILOG_ERROR("AbilityThread::ability abilityImpl_ == nullptr"); return; diff --git a/frameworks/kits/ability/native/src/page_ability_impl.cpp b/frameworks/kits/ability/native/src/page_ability_impl.cpp index 07a1fce4952..436ff06dc02 100644 --- a/frameworks/kits/ability/native/src/page_ability_impl.cpp +++ b/frameworks/kits/ability/native/src/page_ability_impl.cpp @@ -28,7 +28,6 @@ using AbilityManagerClient = OHOS::AAFwk::AbilityManagerClient; */ void PageAbilityImpl::HandleAbilityTransaction(const Want &want, const AAFwk::LifeCycleStateInfo &targetState) { - AbilityImpl::SetUseNewMission(targetState.useNewMission); HILOG_INFO("Handle ability transaction start, sourceState:%{public}d, targetState:%{public}d, " "isNewWant:%{public}d, sceneFlag:%{public}d.", lifecycleState_, @@ -74,13 +73,7 @@ void PageAbilityImpl::HandleAbilityTransaction(const Want &want, const AAFwk::Li CheckAndSave(); } - bool ret = false; - if (AbilityImpl::IsUseNewMission()) { - ret = AbilityTransactionNew(want, targetState); - } else { - ret = AbilityTransaction(want, targetState); - } - if (ret) { + if (AbilityTransaction(want, targetState)) { HILOG_INFO("Handle ability transaction done, notify ability manager service."); AbilityManagerClient::GetInstance()->AbilityTransitionDone(token_, targetState.state, GetRestoreData()); } @@ -97,61 +90,6 @@ void PageAbilityImpl::HandleAbilityTransaction(const Want &want, const AAFwk::Li * */ bool PageAbilityImpl::AbilityTransaction(const Want &want, const AAFwk::LifeCycleStateInfo &targetState) -{ - HILOG_INFO("PageAbilityImpl::AbilityTransaction begin"); - bool ret = true; - switch (targetState.state) { - case AAFwk::ABILITY_STATE_INITIAL: { - if (lifecycleState_ == AAFwk::ABILITY_STATE_INACTIVE) { - Background(); - } - Stop(); - break; - } - case AAFwk::ABILITY_STATE_INACTIVE: { - if (lifecycleState_ == AAFwk::ABILITY_STATE_BACKGROUND) { - Foreground(want); - } - break; - } - case AAFwk::ABILITY_STATE_ACTIVE: { - if (lifecycleState_ == AAFwk::ABILITY_STATE_BACKGROUND) { - Foreground(want); - } - if (targetState.isNewWant) { - NewWant(want); - } - SerUriString(targetState.caller.deviceId + "/" + targetState.caller.bundleName + "/" + - targetState.caller.abilityName); - Active(); - break; - } - case AAFwk::ABILITY_STATE_BACKGROUND: { - if (lifecycleState_ == AAFwk::ABILITY_STATE_INACTIVE) { - Background(); - } - break; - } - default: { - ret = false; - HILOG_ERROR("PageAbilityImpl::HandleAbilityTransaction state error"); - break; - } - } - HILOG_INFO("PageAbilityImpl::AbilityTransaction end: retVal = %{public}d", (int)ret); - return ret; -} - -/** - * @brief Handling the life cycle switching of PageAbility in switch. - * - * @param want Indicates the structure containing information about the ability. - * @param targetState The life cycle state to switch to. - * - * @return return true if the lifecycle transaction successfully, otherwise return false. - * - */ -bool PageAbilityImpl::AbilityTransactionNew(const Want &want, const AAFwk::LifeCycleStateInfo &targetState) { HILOG_INFO("PageAbilityImpl::AbilityTransaction begin"); bool ret = true; diff --git a/frameworks/kits/appkit/native/app/src/main_thread.cpp b/frameworks/kits/appkit/native/app/src/main_thread.cpp index 5ea4ba433b9..c4509253237 100644 --- a/frameworks/kits/appkit/native/app/src/main_thread.cpp +++ b/frameworks/kits/appkit/native/app/src/main_thread.cpp @@ -451,8 +451,6 @@ void MainThread::ScheduleLaunchAbility(const AbilityInfo &info, const sptrGetBundleInfo(abilityInfo->bundleName, BundleFlag::GET_BUNDLE_DEFAULT, bundleInfo); - abilityRecord->SetCompatibleVersion(bundleInfo.compatibleVersion); - HILOG_INFO("MainThread::ScheduleLaunchAbility compatibleVersion:%{public}d", bundleInfo.compatibleVersion); } wptr weak = this; diff --git a/interfaces/innerkits/ability_manager/include/lifecycle_state_info.h b/interfaces/innerkits/ability_manager/include/lifecycle_state_info.h index 4a3db9e7f7d..f630704de7a 100644 --- a/interfaces/innerkits/ability_manager/include/lifecycle_state_info.h +++ b/interfaces/innerkits/ability_manager/include/lifecycle_state_info.h @@ -52,7 +52,6 @@ struct LifeCycleStateInfo : public Parcelable { CallerInfo caller; std::shared_ptr setting = nullptr; LaunchParam launchParam; - bool useNewMission = false; uint32_t sceneFlag = 0; uint32_t sceneFlagBak = 0; diff --git a/services/abilitymgr/include/ability_record.h b/services/abilitymgr/include/ability_record.h index 8dde862c725..7bf5641cef6 100644 --- a/services/abilitymgr/include/ability_record.h +++ b/services/abilitymgr/include/ability_record.h @@ -51,7 +51,6 @@ class CallContainer; const std::string ABILITY_TOKEN_NAME = "AbilityToken"; const std::string LINE_SEPARATOR = "\n"; -constexpr int32_t API_VERSION_7 = 7; /** * @class Token @@ -137,14 +136,8 @@ struct AbilityRequest { sptr connect = nullptr; std::shared_ptr startSetting = nullptr; - int32_t compatibleVersion = 0; std::string specifiedFlag; - bool IsNewVersion() const - { - return compatibleVersion > API_VERSION_7; - } - bool IsContinuation() const { auto flags = want.GetFlags(); @@ -185,7 +178,7 @@ enum ResolveResultType { class AbilityRecord : public std::enable_shared_from_this { public: AbilityRecord(const Want &want, const AppExecFwk::AbilityInfo &abilityInfo, - const AppExecFwk::ApplicationInfo &applicationInfo, int requestCode = -1, int32_t apiVersion = 1); + const AppExecFwk::ApplicationInfo &applicationInfo, int requestCode = -1); virtual ~AbilityRecord(); @@ -660,14 +653,12 @@ public: void ClearFlag(); - bool IsNewVersion(); void SetLaunchReason(const LaunchReason &reason); void SetLastExitReason(const LastExitReason &reason); void ContinueAbility(const std::string& deviceId); void NotifyContinuationResult(int32_t result); std::shared_ptr GetOwnedMissionList() const; - void SetUseNewMission(); void SetMission(const std::shared_ptr &mission); void SetMissionList(const std::shared_ptr &missionList); std::shared_ptr GetMission() const; @@ -738,7 +729,6 @@ private: int requestCode_ = -1; // requestCode_: >= 0 for-result start mode; <0 for normal start mode in default. sptr schedulerDeathRecipient_ = {}; // scheduler binderDied Recipient - sptr iBundleManager_; /** * result_: ability starts with for-result mode will send result before being terminated. @@ -767,7 +757,6 @@ private: bool isRestarting_ = false; // is restarting ? AppState appState_ = AppState::BEGIN; - int32_t compatibleVersion_ = 0; // > 7 new version, <= 7 old version. int32_t uid_ = 0; std::weak_ptr missionList_; std::weak_ptr mission_; @@ -789,21 +778,6 @@ private: mutable bool isDumpWaiting_ = false; std::vector dumpInfos_; }; - -class AbilityRecordNew : public AbilityRecord { -public: - AbilityRecordNew(const Want &want, const AppExecFwk::AbilityInfo &abilityInfo, - const AppExecFwk::ApplicationInfo &applicationInfo, int requestCode = -1, int32_t apiVersion = 1); - - ~AbilityRecordNew(); - - void Activate() override; - void Inactivate() override; - void MoveToBackground(const Closure &task) override; - - void ForegroundNew(); - void BackgroundNew(const Closure &task); -}; } // namespace AAFwk } // namespace OHOS #endif // OHOS_AAFWK_ABILITY_RECORD_H diff --git a/services/abilitymgr/include/ams_configuration_parameter.h b/services/abilitymgr/include/ams_configuration_parameter.h index 439baf73316..0f18ce34582 100644 --- a/services/abilitymgr/include/ams_configuration_parameter.h +++ b/services/abilitymgr/include/ams_configuration_parameter.h @@ -74,12 +74,7 @@ public: * Get current system direction parameters, Temporary method. */ std::string GetOrientation() const; - /** - * check if use new mission. - * - * return true if use mission list, false if use mission stack. - */ - bool IsUseNewMission() const; + /** * Get the max number of restart. */ diff --git a/services/abilitymgr/src/ability_manager_service.cpp b/services/abilitymgr/src/ability_manager_service.cpp index 99550cf8bc1..37adae1f408 100644 --- a/services/abilitymgr/src/ability_manager_service.cpp +++ b/services/abilitymgr/src/ability_manager_service.cpp @@ -2416,7 +2416,6 @@ int AbilityManagerService::GenerateAbilityRequest( return RESOLVE_APP_ERR; } request.appInfo = request.abilityInfo.applicationInfo; - request.compatibleVersion = (int32_t)request.appInfo.apiCompatibleVersion; request.uid = request.appInfo.uid; HILOG_DEBUG("GenerateAbilityRequest end, app name: %{public}s, bundle name: %{public}s, uid: %{public}d.", request.appInfo.name.c_str(), request.appInfo.bundleName.c_str(), request.uid); @@ -3147,8 +3146,8 @@ int AbilityManagerService::StartAbilityByCall( return result; } - if (!abilityRequest.IsNewVersion()) { - HILOG_ERROR("target ability compatible version is lower than 8."); + if (!abilityRequest.abilityInfo.isStageBasedModel) { + HILOG_ERROR("target ability is not stage base model."); return RESOLVE_CALL_ABILITY_VERSION_ERR; } @@ -4702,7 +4701,7 @@ ErrCode AbilityManagerService::ProcessMultiParam(std::vector &argsS } HILOG_INFO("%{public}s, isClient:%{public}d, userID is : %{public}d, cmd is : %{public}s", __func__, isClient, userID, cmd.c_str()); - + std::vector dumpResults; DumpSysState(cmd, dumpResults, isClient, isUser, userID); for (auto it : dumpResults) { diff --git a/services/abilitymgr/src/ability_record.cpp b/services/abilitymgr/src/ability_record.cpp index 3968deec216..17e25ea463f 100644 --- a/services/abilitymgr/src/ability_record.cpp +++ b/services/abilitymgr/src/ability_record.cpp @@ -92,9 +92,8 @@ std::shared_ptr Token::GetAbilityRecord() const } AbilityRecord::AbilityRecord(const Want &want, const AppExecFwk::AbilityInfo &abilityInfo, - const AppExecFwk::ApplicationInfo &applicationInfo, int requestCode, int32_t apiVersion) - : want_(want), abilityInfo_(abilityInfo), applicationInfo_(applicationInfo), - requestCode_(requestCode), compatibleVersion_(apiVersion) + const AppExecFwk::ApplicationInfo &applicationInfo, int requestCode) + : want_(want), abilityInfo_(abilityInfo), applicationInfo_(applicationInfo), requestCode_(requestCode) { recordId_ = abilityRecordId++; auto abilityMgr = DelayedSingleton::GetInstance(); @@ -116,14 +115,8 @@ AbilityRecord::~AbilityRecord() std::shared_ptr AbilityRecord::CreateAbilityRecord(const AbilityRequest &abilityRequest) { - std::shared_ptr abilityRecord = nullptr; - if (abilityRequest.IsNewVersion() && abilityRequest.abilityInfo.type == AbilityType::PAGE) { - abilityRecord = std::make_shared(abilityRequest.want, abilityRequest.abilityInfo, - abilityRequest.appInfo, abilityRequest.requestCode, abilityRequest.compatibleVersion); - } else { - abilityRecord = std::make_shared(abilityRequest.want, abilityRequest.abilityInfo, - abilityRequest.appInfo, abilityRequest.requestCode, abilityRequest.compatibleVersion); - } + std::shared_ptr abilityRecord = std::make_shared( + abilityRequest.want, abilityRequest.abilityInfo, abilityRequest.appInfo, abilityRequest.requestCode); CHECK_POINTER_AND_RETURN(abilityRecord, nullptr); abilityRecord->SetUid(abilityRequest.uid); if (!abilityRecord->Init()) { @@ -1115,11 +1108,6 @@ void AbilityRecord::ClearFlag() appState_ = AppState::END; } -bool AbilityRecord::IsNewVersion() -{ - return compatibleVersion_ > API_VERSION_7; -} - void AbilityRecord::SetLaunchReason(const LaunchReason &reason) { lifeCycleStateInfo_.launchParam.launchReason = reason; @@ -1148,11 +1136,6 @@ void AbilityRecord::SetMissionList(const std::shared_ptr &missionLi missionList_ = missionList; } -void AbilityRecord::SetUseNewMission() -{ - lifeCycleStateInfo_.useNewMission = true; -} - void AbilityRecord::SetMission(const std::shared_ptr &mission) { if (mission) { @@ -1192,94 +1175,6 @@ std::string AbilityRecord::GetSpecifiedFlag() const return specifiedFlag_; } -AbilityRecordNew::AbilityRecordNew(const Want &want, const AppExecFwk::AbilityInfo &abilityInfo, - const AppExecFwk::ApplicationInfo &applicationInfo, int requestCode, int32_t apiVersion) - : AbilityRecord(want, abilityInfo, applicationInfo, requestCode, apiVersion) -{ -} - -AbilityRecordNew::~AbilityRecordNew() -{ -} - -void AbilityRecordNew::Activate() -{ - ForegroundNew(); -} - -void AbilityRecordNew::Inactivate() -{ - HILOG_INFO("AbilityRecordNew Move to Inactivate."); - auto handler = DelayedSingleton::GetInstance()->GetEventHandler(); - if (handler == nullptr) { - HILOG_ERROR("handler is nullptr or task is nullptr."); - return; - } - SendEvent(AbilityManagerService::INACTIVE_TIMEOUT_MSG, AbilityManagerService::INACTIVE_TIMEOUT); - - auto task = [token = token_]() { - HILOG_DEBUG("AbilityRecordNew inactive done."); - PacMap restoreData; - DelayedSingleton::GetInstance()->AbilityTransitionDone(token, - ABILITY_STATE_INACTIVE, restoreData); - }; - handler->PostTask(task); -} - -void AbilityRecordNew::ForegroundNew() -{ - HILOG_INFO("ForegroundingNew."); - CHECK_POINTER(lifecycleDeal_); - - SendEvent(AbilityManagerService::FOREGROUNDNEW_TIMEOUT_MSG, AbilityManagerService::FOREGROUNDNEW_TIMEOUT); - - // schedule active after updating AbilityState and sending timeout message to avoid ability async callback - // earlier than above actions. - currentState_ = AbilityState::FOREGROUNDING_NEW; - lifecycleDeal_->ForegroundNew(want_, lifeCycleStateInfo_); - - // update ability state to appMgr service when restart - if (IsNewWant()) { - sptr preToken = nullptr; - if (GetPreAbilityRecord()) { - preToken = GetPreAbilityRecord()->GetToken(); - } - DelayedSingleton::GetInstance()->AbilityBehaviorAnalysis(token_, preToken, 1, 1, 1); - } -} - -void AbilityRecordNew::MoveToBackground(const Closure &task) -{ - BackgroundNew(task); -} - -void AbilityRecordNew::BackgroundNew(const Closure &task) -{ - HILOG_INFO("Move to backgroundNew."); - CHECK_POINTER(lifecycleDeal_); - auto handler = DelayedSingleton::GetInstance()->GetEventHandler(); - if (handler && task) { - if (!want_.GetBoolParam(DEBUG_APP, false)) { - g_abilityRecordEventId_++; - eventId_ = g_abilityRecordEventId_; - // eventId_ is a unique id of the task. - handler->PostTask(task, std::to_string(eventId_), AbilityManagerService::BACKGROUNDNEW_TIMEOUT); - } else { - HILOG_INFO("Is debug mode, no need to handle time out."); - } - } - - if (!IsTerminating() || IsRestarting()) { - // schedule save ability state before moving to background. - SaveAbilityState(); - } - - // schedule background after updating AbilityState and sending timeout message to avoid ability async callback - // earlier than above actions. - currentState_ = AbilityState::BACKGROUNDING_NEW; - lifecycleDeal_->BackgroundNew(want_, lifeCycleStateInfo_); -} - // new version --start bool AbilityRecord::IsStartedByCall() const { @@ -1441,7 +1336,7 @@ void AbilityRecord::DumpSys(std::vector &info, bool isClient) std::to_string(isWindowAttached_) + " launcher #" + std::to_string(isLauncherAbility_); info.push_back(dumpInfo); - if (isLauncherRoot_ && IsNewVersion()) { + if (isLauncherRoot_ && abilityInfo_.isStageBasedModel) { dumpInfo = " can restart num #" + std::to_string(restartCount_); info.push_back(dumpInfo); } diff --git a/services/abilitymgr/src/lifecycle_state_info.cpp b/services/abilitymgr/src/lifecycle_state_info.cpp index 6f3148ce44f..2ff7618e9d9 100644 --- a/services/abilitymgr/src/lifecycle_state_info.cpp +++ b/services/abilitymgr/src/lifecycle_state_info.cpp @@ -42,7 +42,6 @@ bool LifeCycleStateInfo::ReadFromParcel(Parcel &parcel) return false; } launchParam = *launchInfo; - useNewMission = parcel.ReadBool(); sceneFlag = parcel.ReadUint32(); return true; } @@ -87,10 +86,6 @@ bool LifeCycleStateInfo::Marshalling(Parcel &parcel) const if (!parcel.WriteParcelable(&launchParam)) { return false; } - // write useNewMission - if (!parcel.WriteBool(useNewMission)) { - return false; - } if (!parcel.WriteUint32(sceneFlag)) { return false; } diff --git a/services/abilitymgr/src/mission_list_manager.cpp b/services/abilitymgr/src/mission_list_manager.cpp index b5cb410744f..b1137b0600b 100644 --- a/services/abilitymgr/src/mission_list_manager.cpp +++ b/services/abilitymgr/src/mission_list_manager.cpp @@ -359,7 +359,6 @@ void MissionListManager::GetTargetMissionAndAbility(const AbilityRequest &abilit HILOG_DEBUG("Make new mission data."); targetRecord = AbilityRecord::CreateAbilityRecord(abilityRequest); targetMission = std::make_shared(info.missionInfo.id, targetRecord, missionName, startMethod); - targetRecord->SetUseNewMission(); targetRecord->SetMission(targetMission); } else { HILOG_DEBUG("Update old mission data."); @@ -1676,7 +1675,6 @@ std::shared_ptr MissionListManager::GetTargetMissionList(int missio } auto abilityRecord = AbilityRecord::CreateAbilityRecord(abilityRequest); - abilityRecord->SetUseNewMission(); mission = std::make_shared(innerMissionInfo.missionInfo.id, abilityRecord, innerMissionInfo.missionName); abilityRecord->SetMission(mission); std::shared_ptr newMissionList = std::make_shared(); -- Gitee From d845666db2e788264e4287472cf25d57ca7436c7 Mon Sep 17 00:00:00 2001 From: caochunlei Date: Fri, 22 Apr 2022 17:23:00 +0800 Subject: [PATCH 2/4] caochunlei1@huawei.com Signed-off-by: caochunlei --- .../phone/running_infos_test/running_infos_test.cpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/services/abilitymgr/test/unittest/phone/running_infos_test/running_infos_test.cpp b/services/abilitymgr/test/unittest/phone/running_infos_test/running_infos_test.cpp index 63f6f17883b..051fdd6f0ab 100644 --- a/services/abilitymgr/test/unittest/phone/running_infos_test/running_infos_test.cpp +++ b/services/abilitymgr/test/unittest/phone/running_infos_test/running_infos_test.cpp @@ -620,8 +620,7 @@ HWTEST_F(RunningInfosTest, DataGetAbilityRunningInfos_001, TestSize.Level1) std::shared_ptr abilityRecord = std::make_shared(abilityRequest.want, abilityRequest.abilityInfo, abilityRequest.appInfo, - abilityRequest.requestCode, - abilityRequest.compatibleVersion); + abilityRequest.requestCode); dataAbilityRecord->ability_ = abilityRecord; const std::string dataAbilityName(abilityRequest.abilityInfo.bundleName + '.' + abilityRequest.abilityInfo.name); abilityMs_->dataAbilityManager_->dataAbilityRecordsLoading_.insert( @@ -659,8 +658,7 @@ HWTEST_F(RunningInfosTest, DataGetAbilityRunningInfos_002, TestSize.Level1) std::shared_ptr abilityRecord = std::make_shared(abilityRequest.want, abilityRequest.abilityInfo, abilityRequest.appInfo, - abilityRequest.requestCode, - abilityRequest.compatibleVersion); + abilityRequest.requestCode); dataAbilityRecord->ability_ = abilityRecord; const std::string dataAbilityName(abilityRequest.abilityInfo.bundleName + '.' + abilityRequest.abilityInfo.name); abilityMs_->dataAbilityManager_->dataAbilityRecordsLoaded_.insert( @@ -698,8 +696,7 @@ HWTEST_F(RunningInfosTest, DataGetAbilityRunningInfos_003, TestSize.Level1) std::shared_ptr abilityRecord = std::make_shared(abilityRequest.want, abilityRequest.abilityInfo, abilityRequest.appInfo, - abilityRequest.requestCode, - abilityRequest.compatibleVersion); + abilityRequest.requestCode); dataAbilityRecord->ability_ = abilityRecord; const std::string dataAbilityName(abilityRequest.abilityInfo.bundleName + '.' + abilityRequest.abilityInfo.name); abilityMs_->dataAbilityManager_->dataAbilityRecordsLoading_.insert( @@ -714,8 +711,7 @@ HWTEST_F(RunningInfosTest, DataGetAbilityRunningInfos_003, TestSize.Level1) std::shared_ptr abilityRecord2 = std::make_shared(abilityRequest2.want, abilityRequest2.abilityInfo, abilityRequest2.appInfo, - abilityRequest2.requestCode, - abilityRequest2.compatibleVersion); + abilityRequest2.requestCode); dataAbilityRecord2->ability_ = abilityRecord2; const std::string dataAbilityName2(abilityRequest2.abilityInfo.bundleName + '.' + abilityRequest2.abilityInfo.name); abilityMs_->dataAbilityManager_->dataAbilityRecordsLoaded_.insert( -- Gitee From 0ac0a9a971cff11541922914465a654ff25f6691 Mon Sep 17 00:00:00 2001 From: caochunlei Date: Fri, 22 Apr 2022 18:03:31 +0800 Subject: [PATCH 3/4] caochunlei1@huawei.com Signed-off-by: caochunlei --- .../mission_dump_test/mission_dump_test.cpp | 21 +++++++------------ 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/services/test/moduletest/mission_dump_test/mission_dump_test.cpp b/services/test/moduletest/mission_dump_test/mission_dump_test.cpp index 9210527adb8..fae4aefb4d3 100644 --- a/services/test/moduletest/mission_dump_test/mission_dump_test.cpp +++ b/services/test/moduletest/mission_dump_test/mission_dump_test.cpp @@ -80,8 +80,7 @@ HWTEST_F(MissionDumpTest, Dump_Mission_List_001, TestSize.Level1) AbilityInfo abilityInfo; ApplicationInfo applicationInfo; int requestCode = -1; - int32_t apiVersion = 8; - auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode, apiVersion); + auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode); EXPECT_TRUE(abilityRecord); int32_t id = 1; @@ -139,8 +138,7 @@ HWTEST_F(MissionDumpTest, Dump_Mission_List_002, TestSize.Level1) AbilityInfo abilityInfo; ApplicationInfo applicationInfo; int requestCode = -1; - int32_t apiVersion = 8; - auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode, apiVersion); + auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode); EXPECT_TRUE(abilityRecord); int32_t id = 1; @@ -196,8 +194,7 @@ HWTEST_F(MissionDumpTest, Dump_Mission_List_003, TestSize.Level1) AbilityInfo abilityInfo; ApplicationInfo applicationInfo; int requestCode = -1; - int32_t apiVersion = 8; - auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode, apiVersion); + auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode); EXPECT_TRUE(abilityRecord); int32_t id = 1; @@ -253,8 +250,7 @@ HWTEST_F(MissionDumpTest, Dump_Mission_List_004, TestSize.Level1) AbilityInfo abilityInfo; ApplicationInfo applicationInfo; int requestCode = -1; - int32_t apiVersion = 8; - auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode, apiVersion); + auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode); EXPECT_TRUE(abilityRecord); int32_t id = 1; @@ -310,8 +306,7 @@ HWTEST_F(MissionDumpTest, Dump_MissionList_ByRecordId_001, TestSize.Level1) AbilityInfo abilityInfo; ApplicationInfo applicationInfo; int requestCode = -1; - int32_t apiVersion = 8; - auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode, apiVersion); + auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode); EXPECT_TRUE(abilityRecord); abilityRecord->recordId_ = 101; @@ -362,8 +357,7 @@ HWTEST_F(MissionDumpTest, Dump_MissionList_ByRecordId_002, TestSize.Level1) AbilityInfo abilityInfo; ApplicationInfo applicationInfo; int requestCode = -1; - int32_t apiVersion = 8; - auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode, apiVersion); + auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode); EXPECT_TRUE(abilityRecord); abilityRecord->recordId_ = 101; @@ -414,8 +408,7 @@ HWTEST_F(MissionDumpTest, Dump_MissionList_ByRecordId_003, TestSize.Level1) AbilityInfo abilityInfo; ApplicationInfo applicationInfo; int requestCode = -1; - int32_t apiVersion = 8; - auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode, apiVersion); + auto abilityRecord = std::make_shared(want, abilityInfo, applicationInfo, requestCode); EXPECT_TRUE(abilityRecord); abilityRecord->recordId_ = 101; -- Gitee From f20904803293c8970437287b2b8da8581f5c6c32 Mon Sep 17 00:00:00 2001 From: caochunlei Date: Sun, 24 Apr 2022 10:05:38 +0800 Subject: [PATCH 4/4] caochunlei1@huawei.com Signed-off-by: caochunlei --- .../on_new_want_module_test/on_new_want_module_test.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/services/test/moduletest/on_new_want_module_test/on_new_want_module_test.cpp b/services/test/moduletest/on_new_want_module_test/on_new_want_module_test.cpp index a89ebada701..63e7cd3b207 100644 --- a/services/test/moduletest/on_new_want_module_test/on_new_want_module_test.cpp +++ b/services/test/moduletest/on_new_want_module_test/on_new_want_module_test.cpp @@ -121,7 +121,6 @@ HWTEST_F(OnNewWantModuleTest, Startability_001, TestSize.Level1) abilityRequest.want = want; abilityRequest.abilityInfo = CreateAbilityInfo(abilityName, appName, bundleName, true); abilityRequest.appInfo = CreateAppInfo(appName, bundleName); - abilityRequest.compatibleVersion = 8; std::shared_ptr abilityRecord = AbilityRecord::CreateAbilityRecord(abilityRequest); abilityRecord->SetAbilityState(OHOS::AAFwk::AbilityState::FOREGROUND_NEW); @@ -162,7 +161,6 @@ HWTEST_F(OnNewWantModuleTest, Startability_002, TestSize.Level1) abilityRequest.want = want; abilityRequest.abilityInfo = CreateAbilityInfo(abilityName, appName, bundleName, false); abilityRequest.appInfo = CreateAppInfo(appName, bundleName); - abilityRequest.compatibleVersion = 8; std::shared_ptr abilityRecord = AbilityRecord::CreateAbilityRecord(abilityRequest); abilityRecord->SetAbilityState(OHOS::AAFwk::AbilityState::FOREGROUND_NEW); -- Gitee