diff --git a/interfaces/innerkits/ability_manager/include/ability_manager_client.h b/interfaces/innerkits/ability_manager/include/ability_manager_client.h index a987d9e0a482c67c28dbf979dd3a3f21c35ca02d..57887f13dc8208f93c5ffb114d51adcb6efbd75a 100644 --- a/interfaces/innerkits/ability_manager/include/ability_manager_client.h +++ b/interfaces/innerkits/ability_manager/include/ability_manager_client.h @@ -614,6 +614,15 @@ public: * @return Returns ERR_OK on success, others on failure. */ ErrCode StartUser(int accountId); + + /** + * @brief stop user. + * @param accountId accountId. + * @param callback callback. + * + * @return Returns ERR_OK on success, others on failure. + */ + ErrCode StopUser(int accountId, const sptr &callback); private: static std::mutex mutex_; static std::shared_ptr instance_; diff --git a/services/abilitymgr/src/ability_manager_client.cpp b/services/abilitymgr/src/ability_manager_client.cpp index fb88a561e520de6034c3fd08b2080f1994095ec3..8c336f67077ae0a39f8f55b7db44da05f84fdb0a 100644 --- a/services/abilitymgr/src/ability_manager_client.cpp +++ b/services/abilitymgr/src/ability_manager_client.cpp @@ -786,5 +786,13 @@ ErrCode AbilityManagerClient::StartUser(int accountId) sptr abms = iface_cast(remoteObject_); return abms->StartUser(accountId); } + +ErrCode AbilityManagerClient::StopUser(int accountId, const sptr &callback) +{ + CHECK_REMOTE_OBJECT_AND_RETURN(remoteObject_, ABILITY_SERVICE_NOT_CONNECTED); + + sptr abms = iface_cast(remoteObject_); + return abms->StopUser(accountId, callback); +} } // namespace AAFwk } // namespace OHOS