mirror of
https://github.com/openharmony/ability_ability_runtime.git
synced 2026-08-24 22:21:36 -04:00
fix openLink freeInstal
Signed-off-by: zhongshield1 <zhangzezhong8@huawei-partners.com>
This commit is contained in:
@@ -1232,12 +1232,18 @@ void EtsAbilityContext::OnOpenLink(ani_env *env, ani_object aniObj, ani_string a
|
||||
CreateOpenLinkTask(env, callbackobj, context, want, requestCode);
|
||||
}
|
||||
ret = context->OpenLink(want, requestCode);
|
||||
if (ret == AAFwk::ERR_OPEN_LINK_START_ABILITY_DEFAULT_OK) {
|
||||
aniObject = EtsErrorUtil::CreateError(env, static_cast<AbilityErrorCode>(ERR_OK));
|
||||
} else {
|
||||
aniObject = EtsErrorUtil::CreateErrorByNativeErr(env, static_cast<int32_t>(ret));
|
||||
if (ret == 0) {
|
||||
TAG_LOGI(AAFwkTag::CONTEXT, "openLink succeeded");
|
||||
return;
|
||||
}
|
||||
if (freeInstallObserver_ != nullptr) {
|
||||
if (ret == AAFwk::ERR_OPEN_LINK_START_ABILITY_DEFAULT_OK) {
|
||||
TAG_LOGI(AAFwkTag::CONTEXT, "start ability by default succeeded");
|
||||
freeInstallObserver_->OnInstallFinishedByUrl(startTime, link, ERR_OK);
|
||||
return;
|
||||
}
|
||||
freeInstallObserver_->OnInstallFinishedByUrl(startTime, link, ret);
|
||||
}
|
||||
AppExecFwk::AsyncCallback(env, myCallbackobj, aniObject, nullptr);
|
||||
}
|
||||
|
||||
bool EtsAbilityContext::OnIsTerminating(ani_env *env, ani_object aniObj)
|
||||
|
||||
@@ -884,12 +884,18 @@ void EtsUIExtensionContext::OpenLinkInner(ani_env *env, ani_object aniObj, ani_s
|
||||
CreateOpenLinkTask(env, callbackobj, context, want, requestCode);
|
||||
}
|
||||
ErrCode = context->OpenLink(want, requestCode);
|
||||
if (ErrCode == AAFwk::ERR_OPEN_LINK_START_ABILITY_DEFAULT_OK) {
|
||||
aniObject = EtsErrorUtil::CreateError(env, static_cast<AbilityErrorCode>(ERR_OK));
|
||||
} else {
|
||||
aniObject = EtsErrorUtil::CreateErrorByNativeErr(env, static_cast<int32_t>(ErrCode));
|
||||
if (ErrCode == 0) {
|
||||
TAG_LOGI(AAFwkTag::UI_EXT, "openLink succeeded");
|
||||
return;
|
||||
}
|
||||
if (freeInstallObserver_ != nullptr) {
|
||||
if (ErrCode == AAFwk::ERR_OPEN_LINK_START_ABILITY_DEFAULT_OK) {
|
||||
TAG_LOGI(AAFwkTag::UI_EXT, "start ability by default succeeded");
|
||||
freeInstallObserver_->OnInstallFinishedByUrl(startTime, link, ERR_OK);
|
||||
return;
|
||||
}
|
||||
freeInstallObserver_->OnInstallFinishedByUrl(startTime, link, ErrCode);
|
||||
}
|
||||
AppExecFwk::AsyncCallback(env, myCallbackobj, aniObject, nullptr);
|
||||
}
|
||||
|
||||
void EtsUIExtensionContext::CreateOpenLinkTask(ani_env *env, const ani_object callbackobj,
|
||||
|
||||
Reference in New Issue
Block a user