From ecde7cdd5626b947c78b7bafeaab6da70492eb09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E7=8F=9E=E9=A3=8E?= Date: Wed, 13 Apr 2022 12:46:37 +0000 Subject: [PATCH] Signed-off-by: wuluofeng --- services/abilitymgr_lite/src/ability_service.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/services/abilitymgr_lite/src/ability_service.cpp b/services/abilitymgr_lite/src/ability_service.cpp index 2fd14b9..3f094bf 100644 --- a/services/abilitymgr_lite/src/ability_service.cpp +++ b/services/abilitymgr_lite/src/ability_service.cpp @@ -14,6 +14,7 @@ */ #include "ability_service.h" +#include "dmsfwk_interface.h" #include "aafwk_event_error_id.h" #include "aafwk_event_error_code.h" #include "ability_errors.h" @@ -116,6 +117,14 @@ int32_t AbilityService::StartAbility(const Want *want) info->path = nullptr; } else { // JS APP + DmsProxy *dmsInterface = NULL; + CallerInfo callerInfo = { + .uid = uid + }; + IUnknown *iUnknown = SAMGR_GetInstance()->GetFeatureApi(DISTRIBUTED_SCHEDULE_SERVICE, DMSLITE_FEATURE); + int32 retVal = iUnknown->QueryInterface(iUnknown, DEFAULT_VERSION, (void**) &dmsInterface); + retVal = dmsInterface->StartRemoteAbility((Want *)want, &callerInfo, NULL); + #ifdef OHOS_APPEXECFWK_BMS_BUNDLEMANAGER AbilityInfo abilityInfo = { nullptr, nullptr }; QueryAbilityInfo(want, &abilityInfo); @@ -135,7 +144,7 @@ int32_t AbilityService::StartAbility(const Want *want) info->path = Utils::Strdup((const char *)want->data); #endif } - + info->data = OHOS::Utils::Memdup(want->data, want->dataLength); info->dataLength = want->dataLength; auto ret = StartAbility(info); -- Gitee