电子说
AbilityDelegator提供添加用于监视指定能力的生命周期状态更改的AbilityMonitor对象的能力,包括对AbilityMonitor实例的添加、删除、等待ability到达OnCreate生命周期、设置等待时间等、获取指定ability的生命周期状态、获取当前应用顶部ability、启动指定ability等。
说明:
本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
开发前请熟悉鸿蒙开发指导文档:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
通过AbilityDelegatorRegistry中getAbilityDelegator方法获取。
import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry'
var abilityDelegator;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
addAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback): void
添加AbilityMonitor实例(callback形式)
**系统能力:**SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填说明 | 说明 |
---|---|---|---|
monitor | [AbilityMonitor] | 是 | [AbilityMonitor]实例 |
callback | AsyncCallback | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
function onAbilityCreateCallback(data) {
console.info("onAbilityCreateCallback");
}
var monitor = {
abilityName: "abilityname",
onAbilityCreate: onAbilityCreateCallback
}
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.addAbilityMonitor(monitor, (err : any) = > {
console.info("addAbilityMonitor callback");
});
addAbilityMonitor(monitor: AbilityMonitor): Promise
添加AbilityMonitor实例(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
monitor | [AbilityMonitor] | 是 | [AbilityMonitor]实例 |
返回值:
类型 | 说明 |
---|---|
Promise | 以Promise形式返回。 |
示例:
var abilityDelegator;
function onAbilityCreateCallback(data) {
console.info("onAbilityCreateCallback");
}
var monitor = {
abilityName: "abilityname",
onAbilityCreate: onAbilityCreateCallback
}
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.addAbilityMonitor(monitor).then(() = > {
console.info("addAbilityMonitor promise");
});
removeAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback): void
删除已经添加的AbilityMonitor实例(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
monitor | [AbilityMonitor] | 是 | [AbilityMonitor]实例 |
callback | AsyncCallback | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
function onAbilityCreateCallback(data) {
console.info("onAbilityCreateCallback");
}
var monitor = {
abilityName: "abilityname",
onAbilityCreate: onAbilityCreateCallback
}
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.removeAbilityMonitor(monitor, (err : any) = > {
console.info("removeAbilityMonitor callback");
});
removeAbilityMonitor(monitor: AbilityMonitor): Promise
删除已经添加的AbilityMonitor实例(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
monitor | [AbilityMonitor]实例 |
返回值:
类型 | 说明 |
---|---|
Promise | 以Promise形式返回。 |
var abilityDelegator;
function onAbilityCreateCallback(data) {
console.info("onAbilityCreateCallback");
}
var monitor = {
abilityName: "abilityname",
onAbilityCreate: onAbilityCreateCallback
}
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.removeAbilityMonitor(monitor).then(() = > {
console.info("removeAbilityMonitor promise");
});
waitAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback): void
等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
monitor | [AbilityMonitor] | 是 | [AbilityMonitor]实例 |
callback | AsyncCallback[[Ability] | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
function onAbilityCreateCallback(data) {
console.info("onAbilityCreateCallback");
}
var monitor = {
abilityName: "abilityname",
onAbilityCreate: onAbilityCreateCallback
}
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.waitAbilityMonitor(monitor, (err : any, data : any) = > {
console.info("waitAbilityMonitor callback");
});
waitAbilityMonitor(monitor: AbilityMonitor, timeout: number, callback: AsyncCallback): void
设置等待时间,等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
monitor | [AbilityMonitor] | 是 | [AbilityMonitor]实例 |
timeout | number | 是 | 最大等待时间,单位毫秒(ms) |
callback | AsyncCallback[[Ability] | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
var timeout = 100;
function onAbilityCreateCallback(data) {
console.info("onAbilityCreateCallback");
}
var monitor = {
abilityName: "abilityname",
onAbilityCreate: onAbilityCreateCallback
}
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.waitAbilityMonitor(monitor, timeout, (err : any, data : any) = > {
console.info("waitAbilityMonitor callback");
});
waitAbilityMonitor(monitor: AbilityMonitor, timeout?: number): Promise
设置等待时间,等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
monitor | [AbilityMonitor] | 是 | [AbilityMonitor]实例 |
timeout | number | 否 | 最大等待时间,单位毫秒(ms) |
返回值:
类型 | 说明 |
---|---|
Promise[[Ability]](%5BAbility%5D | 以Promise形式返回Ability。 |
示例:
var abilityDelegator;
function onAbilityCreateCallback(data) {
console.info("onAbilityCreateCallback");
}
var monitor = {
abilityName: "abilityname",
onAbilityCreate: onAbilityCreateCallback
}
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.waitAbilityMonitor(monitor).then((data : any) = > {
console.info("waitAbilityMonitor promise");
});
getAppContext(): Context
获取应用Context
系统能力: SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
[Context] | 应用[Context])。 |
示例:
var abilityDelegator;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
var context = abilityDelegator.getAppContext();
getAbilityState(ability: Ability): number
获取指定ability的生命周期状态
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
ability | [Ability] | 是 | 指定Ability对象 |
返回值:
类型 | 说明 |
---|---|
number | 指定ability的生命周期状态。状态枚举值使用[AbilityLifecycleState]。 |
示例:
var abilityDelegator;
var ability;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.getCurrentTopAbility((err : any, data : any) = > {
console.info("getCurrentTopAbility callback");
ability = data;
var state = abilityDelegator.getAbilityState(ability);
console.info("getAbilityState" + state);
});
getCurrentTopAbility(callback: AsyncCallback): void
获取当前应用顶部ability(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
callback | AsyncCallback[[Ability] | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
var ability;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.getCurrentTopAbility((err : any, data : any) = > {
console.info("getCurrentTopAbility callback");
ability = data;
});
getCurrentTopAbility(): Promise
获取当前应用顶部ability(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise[[Ability] | 以Promise形式返回当前应用顶部ability。 |
示例:
var abilityDelegator;
var ability;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.getCurrentTopAbility().then((data : any) = > {
console.info("getCurrentTopAbility promise");
ability = data;
});
startAbility(want: Want, callback: AsyncCallback): void
启动指定ability(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
want | [Want] | 是 | 启动Ability参数 |
callback | AsyncCallback | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
var want = {
bundleName: "bundleName",
abilityName: "abilityName"
};
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.startAbility(want, (err : any, data : any) = > {
console.info("startAbility callback");
});
startAbility(want: Want): Promise
启动指定ability(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
want | [Want] | 是 | 启动Ability参数 |
返回值:
类型 | 说明 |
---|---|
Promise | 以Promise形式返回。 |
示例:
var abilityDelegator;
var want = {
bundleName: "bundleName",
abilityName: "abilityName"
};
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.startAbility(want).then((data: any) = > {
console.info("startAbility promise");
});
doAbilityForeground(ability: Ability, callback: AsyncCallback): void
调度指定ability生命周期状态到Foreground状态(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
ability | Ability | 是 | 指定Ability对象 |
callback | AsyncCallback | 是 | 表示指定的回调方法 - true:成功 - false:失败 |
示例:
var abilityDelegator;
var ability;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.getCurrentTopAbility((err : any, data : any) = > {
console.info("getCurrentTopAbility callback");
ability = data;
abilityDelegator.doAbilityForeground(ability, (err : any, data : any) = > {
console.info("doAbilityForeground callback");
});
});
doAbilityForeground(ability: Ability): Promise
调度指定ability生命周期状态到Foreground状态(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
ability | Ability | 是 | 指定Ability对象 |
返回值:
类型 | 说明 |
---|---|
Promise | 以Promise形式返回执行结果。 - true:成功 - false:失败 |
示例:
var abilityDelegator;
var ability;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.getCurrentTopAbility((err : any, data : any) = > {
console.info("getCurrentTopAbility callback");
ability = data;
abilityDelegator.doAbilityForeground(ability).then((data : any) = > {
console.info("doAbilityForeground promise");
});
});
doAbilityBackground(ability: Ability, callback: AsyncCallback): void
调度指定ability生命周期状态到Background状态(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
ability | Ability | 是 | 指定Ability对象 |
callback | AsyncCallback | 是 | 表示指定的回调方法 - true:成功 - false:失败 |
示例:
var abilityDelegator;
var ability;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.getCurrentTopAbility((err : any, data : any) = > {
console.info("getCurrentTopAbility callback");
ability = data;
abilityDelegator.doAbilityBackground(ability, (err : any, data : any) = > {
console.info("doAbilityBackground callback");
});
});
doAbilityBackground(ability: Ability): Promise
调度指定ability生命周期状态到Background状态(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
ability | Ability | 是 | 指定Ability对象 |
返回值:
类型 | 说明 |
---|---|
Promise | 以Promise形式返回执行结果。 - true:成功 - false:失败 |
示例:
var abilityDelegator;
var ability;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.getCurrentTopAbility((err : any, data : any) = > {
console.info("getCurrentTopAbility callback");
ability = data;
abilityDelegator.doAbilityBackground(ability).then((data : any) = > {
console.info("doAbilityBackground promise");
});
});
print(msg: string, callback: AsyncCallback): void
打印日志信息到单元测试终端控制台(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
msg | string | 是 | 日志字符串 |
callback | AsyncCallback | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
var msg = "msg";
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.print(msg, (err : any) = > {
console.info("print callback");
});
print(msg: string): Promise
打印日志信息到单元测试终端控制台(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
msg | string | 是 | 日志字符串 |
返回值:
类型 | 说明 |
---|---|
Promise | 以Promise形式返回。 |
示例:
var abilityDelegator;
var msg = "msg";
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.print(msg).then(() = > {
console.info("print promise");
});
executeShellCommand(cmd: string, callback: AsyncCallback): void
执行指定的shell命令(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
cmd | string | 是 | shell命令字符串 |
callback | AsyncCallback[[ShellCmdResult]) | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
var cmd = "cmd";
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.executeShellCommand(cmd, (err : any, data : any) = > {
console.info("executeShellCommand callback");
});
executeShellCommand(cmd: string, timeoutSecs: number, callback: AsyncCallback): void
指定超时时间,并执行指定的shell命令(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
cmd | string | 是 | shell命令字符串 |
timeoutSecs | number | 是 | 设定命令超时时间,单位秒(s) |
callback | AsyncCallback[[ShellCmdResult]) | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
var cmd = "cmd";
var timeout = 100;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.executeShellCommand(cmd, timeout, (err : any, data : any) = > {
console.info("executeShellCommand callback");
});
executeShellCommand(cmd: string, timeoutSecs?: number): Promise
指定超时时间,并执行指定的shell命令(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
cmd | string | 是 | shell命令字符串 |
timeoutSecs | number | 否 | 设定命令超时时间,单位秒(s) |
返回值:
类型 | 说明 |
---|---|
Promise[ShellCmdResult] | 以Promise形式返回Shell命令执行结果[ShellCmdResult]对象。 |
示例:
var abilityDelegator;
var cmd = "cmd";
var timeout = 100;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.executeShellCommand(cmd, timeout).then((data : any) = > {
console.info("executeShellCommand promise");
});
finishTest(msg: string, code: number, callback: AsyncCallback): void
结束测试并打印日志信息到单元测试终端控制台(callback形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
msg | string | 是 | 日志字符串 |
code | number | 是 | 日志码 |
callback | AsyncCallback | 是 | 表示指定的回调方法 |
示例:
var abilityDelegator;
var msg = "msg";
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.finishTest(msg, 0, (err : any) = > {
console.info("finishTest callback");
});
finishTest(msg: string, code: number): Promise
结束测试并打印日志信息到单元测试终端控制台(promise形式)
系统能力: SystemCapability.Ability.AbilityRuntime.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
msg | string | 是 | 日志字符串 |
code | number | 是 | 日志码 |
返回值:
类型 | 说明 |
---|---|
Promise | 以Promise形式返回。 |
示例:
var abilityDelegator;
var msg = "msg";
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
abilityDelegator.finishTest(msg, 0).then(() = > {
console.info("finishTest promise");
});
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !