From e1bc0cd4f3467b798c6f45fe07e98401f2b6b24b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=8F=8B=E6=9D=BE?= Date: Tue, 9 Jul 2024 02:41:30 +0000 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E5=9B=9E=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 邹友松 --- foundations/ability/sa_loader/include/base_service_kits_impl.h | 1 + interfaces/inner_api/engine/src/update_service_kits_impl.cpp | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/foundations/ability/sa_loader/include/base_service_kits_impl.h b/foundations/ability/sa_loader/include/base_service_kits_impl.h index c3e5ae02..13095b92 100644 --- a/foundations/ability/sa_loader/include/base_service_kits_impl.h +++ b/foundations/ability/sa_loader/include/base_service_kits_impl.h @@ -124,6 +124,7 @@ template void BaseServiceKitsImpl::ResetService(cons } remoteServer_ = nullptr; deathRecipient_ = nullptr; + RegisterCallback(); //重新注册回调 } } #endif // BASE_SERVICE_KITS_IMPL_H diff --git a/interfaces/inner_api/engine/src/update_service_kits_impl.cpp b/interfaces/inner_api/engine/src/update_service_kits_impl.cpp index ada4fe92..0d2143a9 100644 --- a/interfaces/inner_api/engine/src/update_service_kits_impl.cpp +++ b/interfaces/inner_api/engine/src/update_service_kits_impl.cpp @@ -266,8 +266,9 @@ int32_t UpdateServiceKitsImpl::VerifyUpgradePackage(const std::string &packagePa void UpdateServiceKitsImpl::RegisterCallback() { ENGINE_LOGI("RegisterUpdateCallback size %{public}zu", remoteUpdateCallbackMap_.size()); + auto updateService = GetService(); for (auto &iter : remoteUpdateCallbackMap_) { - remoteServer_->RegisterUpdateCallback(iter.first, iter.second); + updateService->RegisterUpdateCallback(iter.first, iter.second); } } } // namespace OHOS::UpdateEngine -- Gitee From fdd80306e7647d687207c2f37b91af2f79d9a0a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=8F=8B=E6=9D=BE?= Date: Tue, 9 Jul 2024 12:27:31 +0000 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AF=84=E5=AE=A1?= =?UTF-8?q?=E5=BB=BA=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 邹友松 --- .../ability/sa_loader/include/base_service_kits_impl.h | 4 +++- interfaces/inner_api/engine/src/update_service_kits_impl.cpp | 3 +-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/foundations/ability/sa_loader/include/base_service_kits_impl.h b/foundations/ability/sa_loader/include/base_service_kits_impl.h index 13095b92..228707a0 100644 --- a/foundations/ability/sa_loader/include/base_service_kits_impl.h +++ b/foundations/ability/sa_loader/include/base_service_kits_impl.h @@ -124,7 +124,9 @@ template void BaseServiceKitsImpl::ResetService(cons } remoteServer_ = nullptr; deathRecipient_ = nullptr; - RegisterCallback(); //重新注册回调 + auto updateService = GetService(); //重新连接注册回调 + ENGINE_LOGI("Remote is dead, do ResetService, reconnect service %{public}s", + (updateService != nullptr) ? "success" : "fail"); } } #endif // BASE_SERVICE_KITS_IMPL_H diff --git a/interfaces/inner_api/engine/src/update_service_kits_impl.cpp b/interfaces/inner_api/engine/src/update_service_kits_impl.cpp index 0d2143a9..ada4fe92 100644 --- a/interfaces/inner_api/engine/src/update_service_kits_impl.cpp +++ b/interfaces/inner_api/engine/src/update_service_kits_impl.cpp @@ -266,9 +266,8 @@ int32_t UpdateServiceKitsImpl::VerifyUpgradePackage(const std::string &packagePa void UpdateServiceKitsImpl::RegisterCallback() { ENGINE_LOGI("RegisterUpdateCallback size %{public}zu", remoteUpdateCallbackMap_.size()); - auto updateService = GetService(); for (auto &iter : remoteUpdateCallbackMap_) { - updateService->RegisterUpdateCallback(iter.first, iter.second); + remoteServer_->RegisterUpdateCallback(iter.first, iter.second); } } } // namespace OHOS::UpdateEngine -- Gitee