From 528e63bcf4752d4e40d6e65282b4d86246c007ad Mon Sep 17 00:00:00 2001 From: zhangzezhong Date: Tue, 27 May 2025 13:51:08 +0800 Subject: [PATCH] upd BusinessError Signed-off-by: zhangzezhong --- frameworks/ets/ani/BUILD.gn | 1 - .../ani/ani_common/src/ani_common_util.cpp | 18 ++-- .../ets/ani/uri_permission_manager/BUILD.gn | 20 ----- .../src/sts_uri_perm_mgr.cpp | 4 +- ...@ohos.app.ability.InsightIntentContext.ets | 12 +-- ....app.ability.UIExtensionContentSession.ets | 12 +-- .../ets/@ohos.app.ability.abilityManager.ets | 8 +- .../ets/ets/@ohos.app.ability.appManager.ets | 88 +++++++++---------- .../ets/ets/@ohos.app.ability.application.ets | 24 ++--- .../@ohos.app.ability.insightIntentDriver.ets | 8 +- .../ets/ets/@ohos.app.ability.wantAgent.ets | 54 ++++++------ ...@ohos.application.uriPermissionManager.ets | 41 ++++----- frameworks/ets/ets/BUILD.gn | 21 +++++ .../ets/ets/application/AbilityDelegator.ets | 26 +++--- .../ets/application/ApplicationContext.ets | 40 ++++----- .../application/ServiceExtensionContext.ets | 18 ++-- .../ets/ets/application/UIAbilityContext.ets | 76 ++++++++-------- .../ets/application/UIExtensionContext.ets | 18 ++-- frameworks/ets/ets/utils/AbilityUtils.ets | 8 +- 19 files changed, 249 insertions(+), 248 deletions(-) rename frameworks/ets/{ani/uri_permission_manager => }/ets/@ohos.application.uriPermissionManager.ets (84%) diff --git a/frameworks/ets/ani/BUILD.gn b/frameworks/ets/ani/BUILD.gn index f487ec8a122..427cb12b230 100644 --- a/frameworks/ets/ani/BUILD.gn +++ b/frameworks/ets/ani/BUILD.gn @@ -24,7 +24,6 @@ group("ani_packages") { "${ability_runtime_path}/frameworks/ets/ani/form_extension_ability:form_extension_ability_etc", "${ability_runtime_path}/frameworks/ets/ani/insight_intent/insight_intent_driver:insight_intent_driver_ani_kit", "${ability_runtime_path}/frameworks/ets/ani/native_constructor:context_ani", - "${ability_runtime_path}/frameworks/ets/ani/uri_permission_manager:uri_permission_manager_abc_etc", "${ability_runtime_path}/frameworks/ets/ani/uri_permission_manager:uri_permission_manager_ani_kit", "${ability_runtime_path}/frameworks/ets/ani/wantagent:aniwantagent", "${ability_runtime_path}/frameworks/ets/ani/application:application_ani", diff --git a/frameworks/ets/ani/ani_common/src/ani_common_util.cpp b/frameworks/ets/ani/ani_common/src/ani_common_util.cpp index f1d852f507a..293ffa3c053 100644 --- a/frameworks/ets/ani/ani_common/src/ani_common_util.cpp +++ b/frameworks/ets/ani/ani_common/src/ani_common_util.cpp @@ -624,22 +624,26 @@ bool AsyncCallback(ani_env *env, ani_object call, ani_object error, ani_object r ani_class clsCall {}; if ((status = env->FindClass(CLASSNAME_ASYNC_CALLBACK_WRAPPER, &clsCall)) != ANI_OK) { - TAG_LOGE(AAFwkTag::JSNAPI, "status: %{public}d", status); + TAG_LOGE(AAFwkTag::JSNAPI, "FindClass status: %{public}d", status); return false; } ani_method method {}; - if ((status = env->Class_FindMethod( - clsCall, "invoke", "L@ohos/base/BusinessError;Lstd/core/Object;:V", &method)) != ANI_OK) { - TAG_LOGE(AAFwkTag::JSNAPI, "status: %{public}d", status); + if ((status = env->Class_FindMethod(clsCall, "invoke", nullptr, &method)) != ANI_OK) { + TAG_LOGE(AAFwkTag::JSNAPI, "Class_FindMethod status: %{public}d", status); return false; } - if (result == nullptr) { + if (error == nullptr) { ani_ref nullRef = nullptr; env->GetNull(&nullRef); - result = reinterpret_cast(nullRef); + error = reinterpret_cast(nullRef); + } + if (result == nullptr) { + ani_ref undefinedRef = nullptr; + env->GetUndefined(&undefinedRef); + result = reinterpret_cast(undefinedRef); } if ((status = env->Object_CallMethod_Void(call, method, error, result)) != ANI_OK) { - TAG_LOGE(AAFwkTag::JSNAPI, "status: %{public}d", status); + TAG_LOGE(AAFwkTag::JSNAPI, "Object_CallMethod_Void status: %{public}d", status); return false; } return true; diff --git a/frameworks/ets/ani/uri_permission_manager/BUILD.gn b/frameworks/ets/ani/uri_permission_manager/BUILD.gn index 45039ec05ed..db4c22e2905 100644 --- a/frameworks/ets/ani/uri_permission_manager/BUILD.gn +++ b/frameworks/ets/ani/uri_permission_manager/BUILD.gn @@ -82,24 +82,4 @@ ohos_shared_library("uri_permission_manager_ani_kit") { innerapi_tags = [ "platformsdk" ] subsystem_name = "ability" part_name = "ability_runtime" -} - -generate_static_abc("uri_permission_manager_abc") { - base_url = "./ets" - - files = [ "./ets/@ohos.application.uriPermissionManager.ets" ] - - dst_file = "$target_out_dir/uri_permission_manager.abc" - out_puts = [ "$target_out_dir/uri_permission_manager.abc" ] - - is_boot_abc = "True" - device_dst_file = "/system/framework/uri_permission_manager.abc" -} - -ohos_prebuilt_etc("uri_permission_manager_abc_etc") { - source = "$target_out_dir/uri_permission_manager.abc" - module_install_dir = "framework" - subsystem_name = "ability" - part_name = "ability_runtime" - deps = [ ":uri_permission_manager_abc" ] } \ No newline at end of file diff --git a/frameworks/ets/ani/uri_permission_manager/src/sts_uri_perm_mgr.cpp b/frameworks/ets/ani/uri_permission_manager/src/sts_uri_perm_mgr.cpp index 638650677fb..a0e850698d0 100644 --- a/frameworks/ets/ani/uri_permission_manager/src/sts_uri_perm_mgr.cpp +++ b/frameworks/ets/ani/uri_permission_manager/src/sts_uri_perm_mgr.cpp @@ -151,13 +151,13 @@ void StsUriPermissionManagerInit(ani_env *env) ani_native_function { "grantUriPermissionCallbackSync", "Lstd/core/String;L@ohos/app/ability/wantConstant/wantConstant/Flags;Lstd/core/String;D" - "L@ohos/application/uriPermissionManager/AsyncCallbackWrapper;:V", + "Lutils/AbilityUtils/AsyncCallbackWrapper;:V", reinterpret_cast(grantUriPermissionCallbackSync) }, ani_native_function { "revokeUriPermissionCallbackSync", "Lstd/core/String;Lstd/core/String;D" - "L@ohos/application/uriPermissionManager/AsyncCallbackWrapper;:V", + "Lutils/AbilityUtils/AsyncCallbackWrapper;:V", reinterpret_cast(revokeUriPermissionCallbackSync) }, }; diff --git a/frameworks/ets/ets/@ohos.app.ability.InsightIntentContext.ets b/frameworks/ets/ets/@ohos.app.ability.InsightIntentContext.ets index a3d17fc26b4..40a7569f487 100644 --- a/frameworks/ets/ets/@ohos.app.ability.InsightIntentContext.ets +++ b/frameworks/ets/ets/@ohos.app.ability.InsightIntentContext.ets @@ -19,14 +19,14 @@ import Want from '@ohos.app.ability.Want'; export default class InsightIntentContext { nativeContext: long; - public native nativeStartAbilitySync(want: Want): BusinessError; + public native nativeStartAbilitySync(want: Want): BusinessError; startAbility(want: Want, callback: AsyncCallback): void { - let p1 = taskpool.execute((): BusinessError => { + let p1 = taskpool.execute((): BusinessError => { return this.nativeStartAbilitySync(want); }); p1.then((e: NullishType) => { - let retError = e as BusinessError; + let retError = e as BusinessError; callback(retError, undefined); }, (err: BusinessError): void => { callback(err, undefined); @@ -34,12 +34,12 @@ export default class InsightIntentContext { } startAbility(want: Want): Promise { - let p = new Promise((resolve: (v: undefined) => void, reject: (error: BusinessError) => void): void => { - let p1 = taskpool.execute((): BusinessError => { + let p = new Promise((resolve: (v: undefined) => void, reject: (error: BusinessError) => void): void => { + let p1 = taskpool.execute((): BusinessError => { return this.nativeStartAbilitySync(want); }); p1.then((e: NullishType) => { - let retError = e as BusinessError; + let retError = e as BusinessError; if (retError.code === 0) { resolve(undefined); } else { diff --git a/frameworks/ets/ets/@ohos.app.ability.UIExtensionContentSession.ets b/frameworks/ets/ets/@ohos.app.ability.UIExtensionContentSession.ets index 64066274f0f..d7ef4faf270 100644 --- a/frameworks/ets/ets/@ohos.app.ability.UIExtensionContentSession.ets +++ b/frameworks/ets/ets/@ohos.app.ability.UIExtensionContentSession.ets @@ -50,9 +50,9 @@ export default class UIExtensionContentSession { } terminateSelf(): Promise { - let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -73,9 +73,9 @@ export default class UIExtensionContentSession { } terminateSelfWithResult(parameter: AbilityResult): Promise { - let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/@ohos.app.ability.abilityManager.ets b/frameworks/ets/ets/@ohos.app.ability.abilityManager.ets index cab0f1345fd..a0ee2381e77 100644 --- a/frameworks/ets/ets/@ohos.app.ability.abilityManager.ets +++ b/frameworks/ets/ets/@ohos.app.ability.abilityManager.ets @@ -49,10 +49,10 @@ export default namespace abilityManager { } export function getTopAbility():Promise { - let p = new Promise((resolve: (data: ElementName)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: ElementName)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise((resolve: (data: ElementName)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: ElementName | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as ElementName); } else { reject(err); } diff --git a/frameworks/ets/ets/@ohos.app.ability.appManager.ets b/frameworks/ets/ets/@ohos.app.ability.appManager.ets index ddf0c98a6b7..c8e403129ab 100644 --- a/frameworks/ets/ets/@ohos.app.ability.appManager.ets +++ b/frameworks/ets/ets/@ohos.app.ability.appManager.ets @@ -76,9 +76,9 @@ export class KeepAliveBundleInfoInner implements KeepAliveBundleInfo { export native function nativePreloadApplication(callback: AsyncCallbackWrapper, bundleName: string, userId: number, mode: PreloadMode, appIndex?: number): void; export function preloadApplication(bundleName: string, userId: number, mode: PreloadMode, appIndex?: number): Promise{ - let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError | null)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -100,10 +100,10 @@ export function getRunningProcessInformation(callback: AsyncCallback> { - let p = new Promise>((resolve:(data:Array)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper>((err: BusinessError, data: Array)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise>((resolve:(data:Array)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper>((err: BusinessError | null, data: Array | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as Array); } else { reject(err); } @@ -124,10 +124,10 @@ export function getForegroundApplications(callback: AsyncCallback> { - let p = new Promise>((resolve:(data:Array)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper>((err: BusinessError, data: Array)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise>((resolve:(data:Array)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper>((err: BusinessError | null, data: Array | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as Array); } else { reject(err); } @@ -141,10 +141,10 @@ export function getForegroundApplications(): Promise> { export native function nativeGetRunningMultiAppInfo(bundleName: string, callback: AsyncCallbackWrapper): void; export function getRunningMultiAppInfo(bundleName: string): Promise { - let p = new Promise((resolve:(data: RunningMultiAppInfo)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: RunningMultiAppInfo)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise((resolve:(data: RunningMultiAppInfo)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: RunningMultiAppInfo | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as RunningMultiAppInfo); } else { reject(err); } @@ -165,10 +165,10 @@ export function getRunningProcessInfoByBundleName(bundleName: string, callback: } export function getRunningProcessInfoByBundleName(bundleName: string): Promise> { - let p = new Promise>((resolve:(data: Array)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper>((err: BusinessError, data: Array)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise>((resolve:(data: Array)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper>((err: BusinessError | null, data: Array | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as Array); } else { reject(err); } @@ -190,10 +190,10 @@ export function getRunningProcessInfoByBundleName(bundleName: string, userId: nu } export function getRunningProcessInfoByBundleName(bundleName: string, userId: number): Promise> { - let p = new Promise>((resolve:(data: Array)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper>((err: BusinessError, data: Array)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise>((resolve:(data: Array)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper>((err: BusinessError | null, data: Array | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as Array); } else { reject(err); } @@ -225,9 +225,9 @@ export function off(type: 'applicationState', observerId: number, callback: Asyn } export function off(type: 'applicationState', observerId: number): Promise { - let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError | null)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -249,10 +249,10 @@ export function getAppMemorySize(callback: AsyncCallback): void }); } export function getAppMemorySize(): Promise { - let p = new Promise((resolve:(data:number)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: number)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise((resolve:(data:number)=>void, reject:(err: BusinessError | null)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: number | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as number); } else { reject(err); } @@ -272,10 +272,10 @@ export function isRamConstrainedDevice(callback: AsyncCallback): void { }); } export function isRamConstrainedDevice(): Promise { - let p = new Promise((resolve:(data:boolean)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: boolean)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise((resolve:(data:boolean)=>void, reject:(err: BusinessError | null)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: boolean | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as boolean); } else { reject(err); } @@ -295,10 +295,10 @@ export function isRunningInStabilityTest(callback: AsyncCallback): void }); } export function isRunningInStabilityTest(): Promise { - let p = new Promise((resolve:(data:boolean)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: boolean)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise((resolve:(data:boolean)=>void, reject:(err: BusinessError | null)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: boolean | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as boolean); } else { reject(err); } @@ -319,9 +319,9 @@ export function killProcessesByBundleName(bundleName: string, callback: AsyncCal }); } export function killProcessesByBundleName(bundleName: string): Promise { - let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError | null)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -334,9 +334,9 @@ export function killProcessesByBundleName(bundleName: string): Promise { return p; } export function killProcessesByBundleName(bundleName: string, clearPageStack: boolean, appIndex?: number): Promise { - let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError | null)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/@ohos.app.ability.application.ets b/frameworks/ets/ets/@ohos.app.ability.application.ets index 6dae2e49dd5..f5654b6c45f 100644 --- a/frameworks/ets/ets/@ohos.app.ability.application.ets +++ b/frameworks/ets/ets/@ohos.app.ability.application.ets @@ -27,10 +27,10 @@ export default namespace application { export function createModuleContext(context: Context, moduleName: string): Promise { let p = - new Promise((resolve: (data: Context) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: Context) => { - if (err.code == 0) { - resolve(data); + new Promise((resolve: (data: Context) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: Context | undefined) => { + if (err == null || err.code == 0) { + resolve(data as Context); } else { reject(err); } @@ -44,10 +44,10 @@ export default namespace application { export function createModuleContext(context: Context, bundleName: string, moduleName: string): Promise { let p = - new Promise((resolve: (data: Context) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: Context) => { - if (err.code == 0) { - resolve(data); + new Promise((resolve: (data: Context) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: Context | undefined) => { + if (err == null || err.code == 0) { + resolve(data as Context); } else { reject(err); } @@ -61,10 +61,10 @@ export default namespace application { export function createBundleContext(context: Context, bundleName: string): Promise { let p = - new Promise((resolve: (data: Context) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: Context) => { - if (err.code == 0) { - resolve(data); + new Promise((resolve: (data: Context) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: Context | undefined) => { + if (err == null || err.code == 0) { + resolve(data as Context); } else { reject(err); } diff --git a/frameworks/ets/ets/@ohos.app.ability.insightIntentDriver.ets b/frameworks/ets/ets/@ohos.app.ability.insightIntentDriver.ets index 2d897c008b8..0f9362e7e4a 100644 --- a/frameworks/ets/ets/@ohos.app.ability.insightIntentDriver.ets +++ b/frameworks/ets/ets/@ohos.app.ability.insightIntentDriver.ets @@ -49,11 +49,11 @@ export default namespace insightIntentDriver { export function execute(param: ExecuteParam): Promise { let pPromise = new Promise(( resolve: (data: insightIntent.ExecuteResult) => void, - reject: (error: BusinessError) => void) => { + reject: (err: BusinessError) => void) => { let pCallback = new AsyncCallbackWrapper(( - err: BusinessError, data: insightIntent.ExecuteResult) => { - if (err.code == 0) { - resolve(data); + err: BusinessError | null, data: insightIntent.ExecuteResult | undefined) => { + if (err == null || err.code == 0) { + resolve(data as insightIntent.ExecuteResult); } else { reject(err); } diff --git a/frameworks/ets/ets/@ohos.app.ability.wantAgent.ets b/frameworks/ets/ets/@ohos.app.ability.wantAgent.ets index dc084c94b9a..45ca57ebc0c 100644 --- a/frameworks/ets/ets/@ohos.app.ability.wantAgent.ets +++ b/frameworks/ets/ets/@ohos.app.ability.wantAgent.ets @@ -37,10 +37,10 @@ namespace wantAgent { }); } export function getBundleName(agent: WantAgent): Promise { - return new Promise((resolve: (data:string)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: string)=>{ - if (err.code == 0) { - resolve(data); + return new Promise((resolve: (data:string)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: string | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as string); } else { reject(err); } @@ -57,10 +57,10 @@ namespace wantAgent { }); } export function getUid(agent: WantAgent): Promise { - return new Promise((resolve: (data:number)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: number)=>{ - if (err.code == 0) { - resolve(data); + return new Promise((resolve: (data:number)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: number | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as number); } else { reject(err); } @@ -77,10 +77,10 @@ namespace wantAgent { }); } export function getWant(agent: WantAgent): Promise { - return new Promise((resolve: (data:Want)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: Want)=>{ - if (err.code == 0) { - resolve(data); + return new Promise((resolve: (data:Want)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: Want | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as Want); } else { reject(err); } @@ -97,9 +97,9 @@ namespace wantAgent { }); } export function cancel(agent: WantAgent): Promise { - return new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + return new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -127,10 +127,10 @@ namespace wantAgent { }); } export function equal(agent: WantAgent, otherAgent: WantAgent): Promise { - return new Promise((resolve: (data:boolean)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: boolean)=>{ - if (err.code == 0) { - resolve(data); + return new Promise((resolve: (data:boolean)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: boolean | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as boolean); } else { reject(err); } @@ -147,10 +147,10 @@ namespace wantAgent { }); } export function getWantAgent(info: WantAgentInfo): Promise { - return new Promise((resolve: (data:WantAgent)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: WantAgent)=>{ - if (err.code == 0) { - resolve(data); + return new Promise((resolve: (data:WantAgent)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: WantAgent | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as WantAgent); } else { reject(err); } @@ -167,10 +167,10 @@ namespace wantAgent { }); } export function getOperationType(agent: WantAgent): Promise { - return new Promise((resolve: (data:number)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: number)=>{ - if (err.code == 0) { - resolve(data); + return new Promise((resolve: (data:number)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: number | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as number); } else { reject(err); } diff --git a/frameworks/ets/ani/uri_permission_manager/ets/@ohos.application.uriPermissionManager.ets b/frameworks/ets/ets/@ohos.application.uriPermissionManager.ets similarity index 84% rename from frameworks/ets/ani/uri_permission_manager/ets/@ohos.application.uriPermissionManager.ets rename to frameworks/ets/ets/@ohos.application.uriPermissionManager.ets index c586a2cca39..307c7bb9661 100644 --- a/frameworks/ets/ani/uri_permission_manager/ets/@ohos.application.uriPermissionManager.ets +++ b/frameworks/ets/ets/@ohos.application.uriPermissionManager.ets @@ -15,18 +15,7 @@ import wantConstant from '@ohos.app.ability.wantConstant'; import { BusinessError, AsyncCallback } from '@ohos.base'; - -export class AsyncCallbackWrapper { - myFun_:AsyncCallback = (err: BusinessError, data: T) => {} - - constructor(myFun:AsyncCallback){ - this.myFun_ = myFun; - } - - invoke(err: BusinessError, data: T) : void { - this.myFun_(err, data); - } -} +import AsyncCallbackWrapper from './utils/AbilityUtils'; export default namespace uriPermissionManager { loadLibrary("uri_permission_manager_ani_kit.z"); @@ -38,9 +27,13 @@ export default namespace uriPermissionManager { export function grantUriPermission(uri: string, flag: wantConstant.Flags, targetBundleName: string): Promise { let p:Promise = new Promise((resolve: (data: number)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: number)=>{ - if (err.code == 0) { - resolve(data); + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: number | undefined)=>{ + if (err === null || err.code === 0) { + if (data === undefined) { + resolve(-1); + } else { + resolve(data); + } } else { reject(err); } @@ -55,8 +48,8 @@ export default namespace uriPermissionManager { export function grantUriPermission(uri: string, flag: wantConstant.Flags, targetBundleName: string, appCloneIndex: number): Promise { let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: number)=>{ - if (err.code == 0) { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: number | undefined)=>{ + if (err === null || err.code === 0) { resolve(undefined); } else { reject(err); @@ -80,9 +73,13 @@ export default namespace uriPermissionManager { export function revokeUriPermission(uri: string, targetBundleName: string): Promise { let p:Promise = new Promise((resolve: (data: number)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: number)=>{ - if (err.code == 0) { - resolve(data); + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: number | undefined)=>{ + if (err === null || err.code === 0) { + if (data === undefined) { + resolve(-1); + } else { + resolve(data); + } } else { reject(err); } @@ -96,8 +93,8 @@ export default namespace uriPermissionManager { export function revokeUriPermission(uri: string, targetBundleName: string, appCloneIndex: number): Promise { let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: number)=>{ - if (err.code == 0) { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: number | undefined)=>{ + if (err === null || err.code === 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/BUILD.gn b/frameworks/ets/ets/BUILD.gn index ae9a2fc41a8..2693748fbe6 100644 --- a/frameworks/ets/ets/BUILD.gn +++ b/frameworks/ets/ets/BUILD.gn @@ -800,6 +800,26 @@ ohos_prebuilt_etc("ability_runtime_insight_intent_executor_abc_etc") { deps = [ ":ability_runtime_insight_intent_executor_abc" ] } +generate_static_abc("uri_permission_manager_abc") { + base_url = "./" + + files = [ "./@ohos.application.uriPermissionManager.ets" ] + + dst_file = "$target_out_dir/uri_permission_manager.abc" + out_puts = [ "$target_out_dir/uri_permission_manager.abc" ] + + is_boot_abc = "True" + device_dst_file = "/system/framework/uri_permission_manager.abc" +} + +ohos_prebuilt_etc("uri_permission_manager_abc_etc") { + source = "$target_out_dir/uri_permission_manager.abc" + module_install_dir = "framework" + subsystem_name = "ability" + part_name = "ability_runtime" + deps = [ ":uri_permission_manager_abc" ] +} + group("ets_packages") { deps = [ ":ability_ability_application_abc_etc", @@ -848,6 +868,7 @@ group("ets_packages") { ":ability_runtime_want_constant_abc_etc", ":service_extension_ability_abc_etc", ":ui_extension_ability_ani_etc", + ":uri_permission_manager_abc_etc", ":ability_runtime_OpenLink_Options_abc_etc", ] } diff --git a/frameworks/ets/ets/application/AbilityDelegator.ets b/frameworks/ets/ets/application/AbilityDelegator.ets index b2655d3e848..d50cad83ac1 100644 --- a/frameworks/ets/ets/application/AbilityDelegator.ets +++ b/frameworks/ets/ets/application/AbilityDelegator.ets @@ -73,9 +73,9 @@ class AbilityDelegatorInner implements AbilityDelegator { } finishTest(msg: string, code: number): Promise { let p: Promise = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -103,10 +103,10 @@ class AbilityDelegatorInner implements AbilityDelegator { } executeShellCommand(cmd: string, timeoutSecs?: number): Promise { let p = new Promise((resolve: (data: ShellCmdResult) => void, - reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: ShellCmdResult) => { - if (err.code == 0) { - resolve(data); + reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: ShellCmdResult | undefined) => { + if (err == null || err.code == 0) { + resolve(data as ShellCmdResult); } else { reject(err); } @@ -130,9 +130,9 @@ class AbilityDelegatorInner implements AbilityDelegator { } addAbilityMonitor(monitor: AbilityMonitor): Promise { let p = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -153,9 +153,9 @@ class AbilityDelegatorInner implements AbilityDelegator { } startAbility(want: Want): Promise { let p: Promise = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/application/ApplicationContext.ets b/frameworks/ets/ets/application/ApplicationContext.ets index f711c92f5a7..2eb05a84c52 100644 --- a/frameworks/ets/ets/application/ApplicationContext.ets +++ b/frameworks/ets/ets/application/ApplicationContext.ets @@ -54,9 +54,9 @@ export default class ApplicationContext extends Context { off(type: 'environment', callbackId: number): Promise { let p = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -71,9 +71,9 @@ export default class ApplicationContext extends Context { preloadUIExtensionAbility(want: Want): Promise { let p = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -95,9 +95,9 @@ export default class ApplicationContext extends Context { killAllProcesses(): Promise { let p = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -112,9 +112,9 @@ export default class ApplicationContext extends Context { killAllProcesses(clearPageStack: boolean): Promise { let p = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -136,11 +136,11 @@ export default class ApplicationContext extends Context { getRunningProcessInformation(): Promise> { let p = new Promise>((resolve: (data: Array) => void, - reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper>((err: BusinessError, - data: Array) => { - if (err.code == 0) { - resolve(data); + reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper>((err: BusinessError | null, + data: Array | undefined) => { + if (err == null || err.code == 0) { + resolve(data as Array); } else { reject(err); } @@ -161,9 +161,9 @@ export default class ApplicationContext extends Context { clearUpApplicationData(): Promise { let p = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/application/ServiceExtensionContext.ets b/frameworks/ets/ets/application/ServiceExtensionContext.ets index 51e455a55b3..e4d6a0551ff 100644 --- a/frameworks/ets/ets/application/ServiceExtensionContext.ets +++ b/frameworks/ets/ets/application/ServiceExtensionContext.ets @@ -37,9 +37,9 @@ export default class ServiceExtensionContext extends ExtensionContext { } terminateSelf(): Promise { - let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -67,9 +67,9 @@ export default class ServiceExtensionContext extends ExtensionContext { } startAbility(want: Want, options: StartOptions): Promise { - let p = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -90,9 +90,9 @@ export default class ServiceExtensionContext extends ExtensionContext { } startServiceExtensionAbility(want: Want): Promise { - let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/application/UIAbilityContext.ets b/frameworks/ets/ets/application/UIAbilityContext.ets index cb57465023d..369f88ce50a 100644 --- a/frameworks/ets/ets/application/UIAbilityContext.ets +++ b/frameworks/ets/ets/application/UIAbilityContext.ets @@ -54,7 +54,7 @@ export default class UIAbilityContext extends Context { private native nativeTerminateSelfSync(callback:AsyncCallbackWrapper): void; private native nativeTerminateSelfWithResult(parameter: AbilityResult, callback:AsyncCallbackWrapper): void; private native nativeReportDrawnCompletedSync(callback:AsyncCallbackWrapper): void; - private native nativeStartAbilityByTypeSync(type: string, wantParam: Record, startCallback: AbilityStartCallback): BusinessError; + private native nativeStartAbilityByTypeSync(type: string, wantParam: Record, startCallback: AbilityStartCallback): BusinessError; private native nativeStartServiceExtensionAbilitySync(want: Want, callback: AsyncCallbackWrapper): void; private native nativeStartAbilityByCallSync(want: Want): Caller; private native nativeOpenLinkSync(link: string, myCallback:AsyncCallbackWrapper, options?: OpenLinkOptions, callback?: AsyncCallbackWrapper): void; @@ -77,9 +77,9 @@ export default class UIAbilityContext extends Context { } startAbility(want: Want): Promise { - let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p:Promise = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -93,9 +93,9 @@ export default class UIAbilityContext extends Context { } startAbility(want: Want, options: StartOptions): Promise { - let p = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -123,10 +123,10 @@ export default class UIAbilityContext extends Context { } startAbilityForResult(want: Want): Promise{ - let p = new Promise((resolve: (data: AbilityResult)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: AbilityResult)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise((resolve: (data: AbilityResult)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: AbilityResult | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as AbilityResult); } else { reject(err); } @@ -139,10 +139,10 @@ export default class UIAbilityContext extends Context { } startAbilityForResult(want: Want, startOptions: StartOptions): Promise { - let p = new Promise((resolve: (data: AbilityResult)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError, data: AbilityResult)=>{ - if (err.code == 0) { - resolve(data); + let p = new Promise((resolve: (data: AbilityResult)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null, data: AbilityResult | undefined)=>{ + if (err == null || err.code == 0) { + resolve(data as AbilityResult); } else { reject(err); } @@ -162,9 +162,9 @@ export default class UIAbilityContext extends Context { } terminateSelf(): Promise { - let p = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p = new Promise((resolve: (data:undefined)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -185,9 +185,9 @@ export default class UIAbilityContext extends Context { } terminateSelfWithResult(parameter: AbilityResult): Promise{ - let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError)=>void):void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError)=>{ - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError)=>void):void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null)=>{ + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -208,11 +208,11 @@ export default class UIAbilityContext extends Context { } startAbilityByType(type: string, wantParam: Record, startCallback: AbilityStartCallback, callback: AsyncCallback): void { - let p1 = taskpool.execute((): BusinessError => { + let p1 = taskpool.execute((): BusinessError => { return this.nativeStartAbilityByTypeSync(type, wantParam, startCallback); }); p1.then((e: NullishType) => { - let retError = e as BusinessError; + let retError = e as BusinessError; callback(retError, undefined); },(err: BusinessError): void => { callback(err, undefined); @@ -220,12 +220,12 @@ export default class UIAbilityContext extends Context { } startAbilityByType(type: string, wantParam: Record, startCallback: AbilityStartCallback): Promise { - let p = new Promise((resolve: (v: undefined) => void, reject: (error: BusinessError) => void): void => { - let p1 = taskpool.execute((): BusinessError => { + let p = new Promise((resolve: (v: undefined) => void, reject: (error: BusinessError) => void): void => { + let p1 = taskpool.execute((): BusinessError => { return this.nativeStartAbilityByTypeSync(type, wantParam, startCallback); }); p1.then((e: NullishType) => { - let retError = e as BusinessError; + let retError = e as BusinessError; if (retError.code === 0) { resolve(undefined); } else { @@ -244,9 +244,9 @@ export default class UIAbilityContext extends Context { } startServiceExtensionAbility(want: Want): Promise { - let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -264,7 +264,7 @@ export default class UIAbilityContext extends Context { } openLink(link: string, options?: OpenLinkOptions, callback?: AsyncCallback): Promise { - return new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + return new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { let finalOptions: OpenLinkOptions | undefined = undefined; if (options) { finalOptions = options; @@ -273,8 +273,8 @@ export default class UIAbilityContext extends Context { if (callback) { callParam = new AsyncCallbackWrapper(callback); } - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -295,9 +295,9 @@ export default class UIAbilityContext extends Context { } moveAbilityToBackground(): Promise { - return new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let syncCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + return new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let syncCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -317,9 +317,9 @@ export default class UIAbilityContext extends Context { } requestModalUIExtension(pickerWant: Want): Promise { - return new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let syncCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + return new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let syncCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/application/UIExtensionContext.ets b/frameworks/ets/ets/application/UIExtensionContext.ets index 4d4c5c693e3..087b44d8305 100644 --- a/frameworks/ets/ets/application/UIExtensionContext.ets +++ b/frameworks/ets/ets/application/UIExtensionContext.ets @@ -35,9 +35,9 @@ export default class UIExtensionContext extends ExtensionContext { } terminateSelf(): Promise { - let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined) => void, reject:(err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -58,9 +58,9 @@ export default class UIExtensionContext extends ExtensionContext { } terminateSelfWithResult(parameter: AbilityResult): Promise { - let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + let p = new Promise((resolve: (data: undefined)=>void, reject:(err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); @@ -89,9 +89,9 @@ export default class UIExtensionContext extends ExtensionContext { startAbility(want: Want, options: StartOptions): Promise { let p = - new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { - let myCall = new AsyncCallbackWrapper((err: BusinessError) => { - if (err.code == 0) { + new Promise((resolve: (data: undefined) => void, reject: (err: BusinessError) => void): void => { + let myCall = new AsyncCallbackWrapper((err: BusinessError | null) => { + if (err == null || err.code == 0) { resolve(undefined); } else { reject(err); diff --git a/frameworks/ets/ets/utils/AbilityUtils.ets b/frameworks/ets/ets/utils/AbilityUtils.ets index b12da5e18c3..cf3f297f0c4 100644 --- a/frameworks/ets/ets/utils/AbilityUtils.ets +++ b/frameworks/ets/ets/utils/AbilityUtils.ets @@ -20,14 +20,14 @@ const DOMAIN_ID = 0xD001300; const TAG = 'AbilityUtils'; const LEVEL = 100; -export default class AsyncCallbackWrapper { - private myFun_:AsyncCallback = (err: BusinessError, data: T) => {} +export default class AsyncCallbackWrapper { + private myFun_: AsyncCallback = (err: BusinessError | null, data: T | undefined) => {} - constructor(myFun:AsyncCallback){ + constructor(myFun: AsyncCallback) { this.myFun_ = myFun; } - invoke(err: BusinessError, data: T) : void { + invoke(err: BusinessError | null, data: T | undefined): void { this.myFun_(err, data); } } -- Gitee