当前仓库属于关闭状态,部分功能使用受限,详情请查阅 仓库状态说明
1.4K Star 7.4K Fork 8.2K

OpenHarmony/docs
关闭

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
docker
en
zh-cn
application-dev
IDL
ability
connectivity
database
device-usage-statistics
device
dfx
internationalization
media
napi
notification
public_sys-resources
quick-start
reference
apis
figures
public_sys-resources
Readme-CN.md
js-apis-Bundle-InnerBundleManager.md
js-apis-Bundle-distributedBundle.md
js-apis-Bundle.md
js-apis-Context.md
js-apis-DataUriUtils.md
js-apis-WorkSchedulerExtensionAbility.md
js-apis-ability-context.md
js-apis-ability-errorCode.md
js-apis-ability-wantConstant.md
js-apis-abilityAccessCtrl.md
js-apis-abilityDelegatorRegistry.md
js-apis-abilityrunninginfo.md
js-apis-abilitystagecontext.md
js-apis-accessibility.md
js-apis-animator.md
js-apis-appAccount.md
js-apis-application-MissionSnapshot.md
js-apis-application-StartOptions.md
js-apis-application-Want.md
js-apis-application-WindowExtensionAbility.md
js-apis-application-ability.md
js-apis-application-abilityConstant.md
js-apis-application-abilityDelegator.md
js-apis-application-abilityDelegatorArgs.md
js-apis-application-abilityLifecycleCallback.md
js-apis-application-abilityManager.md
js-apis-application-abilityMonitor.md
js-apis-application-abilitystage.md
js-apis-application-applicationContext.md
js-apis-application-context.md
js-apis-application-shellCmdResult.md
js-apis-application-staticSubscriberExtensionAbility.md
js-apis-appmanager.md
js-apis-arraylist.md
js-apis-audio.md
js-apis-backgroundTaskManager.md
js-apis-battery-info.md
js-apis-bluetooth.md
js-apis-brightness.md
js-apis-bundle-AbilityInfo.md
js-apis-bundle-ApplicationInfo.md
js-apis-bundle-BundleInfo.md
js-apis-bundle-BundleInstaller.md
js-apis-bundle-CustomizeData.md
js-apis-bundle-ExtensionAbilityInfo.md
js-apis-bundle-HapModuleInfo.md
js-apis-bundle-Metadata.md
js-apis-bundle-ModuleInfo.md
js-apis-bundle-PermissionDef.md
js-apis-bundle-ShortcutInfo.md
js-apis-bundle-remoteAbilityInfo.md
js-apis-bytrace.md
js-apis-call.md
js-apis-camera.md
js-apis-cardEmulation.md
js-apis-commonEvent.md
js-apis-config-policy.md
js-apis-configuration.md
js-apis-configurationconstant.md
js-apis-connectedTag.md
js-apis-contact.md
js-apis-convertxml.md
js-apis-data-ability.md
js-apis-data-distributedobject.md
js-apis-data-preferences.md
js-apis-data-rdb.md
js-apis-data-resultset.md
js-apis-data-storage.md
js-apis-dataAbilityHelper.md
js-apis-deque.md
js-apis-device-info.md
js-apis-device-manager.md
js-apis-deviceUsageStatistics.md
js-apis-display.md
js-apis-distributed-account.md
js-apis-distributed-data.md
js-apis-document.md
js-apis-emitter.md
js-apis-enterprise-device-manager.md
js-apis-environment.md
js-apis-eventhub.md
js-apis-extension-context.md
js-apis-extensionrunninginfo.md
js-apis-faultLogger.md
js-apis-featureAbility.md
js-apis-fileio.md
js-apis-filemanager.md
js-apis-formInfo.md
js-apis-formbindingdata.md
js-apis-formerror.md
js-apis-formextension.md
js-apis-formextensioncontext.md
js-apis-formhost.md
js-apis-formprovider.md
js-apis-geolocation.md
js-apis-hashmap.md
js-apis-hashset.md
js-apis-hiappevent.md
js-apis-hichecker.md
js-apis-hidebug.md
js-apis-hilog.md
js-apis-hitracechain.md
js-apis-hitracemeter.md
js-apis-http.md
js-apis-huks.md
js-apis-i18n.md
js-apis-image.md
js-apis-inputconsumer.md
js-apis-inputdevice.md
js-apis-inputevent.md
js-apis-inputeventclient.md
js-apis-inputmethod.md
js-apis-inputmethodengine.md
js-apis-inputmonitor.md
js-apis-intl.md
js-apis-keycode.md
js-apis-keyevent.md
js-apis-lightweightmap.md
js-apis-lightweightset.md
js-apis-linkedlist.md
js-apis-list.md
js-apis-logs.md
js-apis-media.md
js-apis-medialibrary.md
js-apis-mediaquery.md
js-apis-missionManager.md
js-apis-mouseevent.md
js-apis-net-connection.md
js-apis-nfcController.md
js-apis-nfcTag.md
js-apis-notification.md
js-apis-observer.md
js-apis-osAccount.md
js-apis-particleAbility.md
js-apis-pasteboard.md
js-apis-permissionrequestresult.md
js-apis-plainarray.md
js-apis-power.md
js-apis-process.md
js-apis-processrunninginfo.md
js-apis-prompt.md
js-apis-queue.md
js-apis-radio.md
js-apis-reminderAgent.md
js-apis-request.md
js-apis-resource-manager.md
js-apis-router.md
js-apis-rpc.md
js-apis-runninglock.md
js-apis-screen-lock.md
js-apis-screen.md
js-apis-screenshot.md
js-apis-securityLabel.md
js-apis-sensor.md
js-apis-service-extension-ability.md
js-apis-service-extension-context.md
js-apis-settings.md
js-apis-sim.md
js-apis-sms.md
js-apis-socket.md
js-apis-stack.md
js-apis-statfs.md
js-apis-storage-statistics.md
js-apis-system-app.md
js-apis-system-battery.md
js-apis-system-bluetooth.md
js-apis-system-brightness.md
js-apis-system-cipher.md
js-apis-system-configuration.md
js-apis-system-device.md
js-apis-system-fetch.md
js-apis-system-file.md
js-apis-system-location.md
js-apis-system-mediaquery.md
js-apis-system-network.md
js-apis-system-notification.md
js-apis-system-package.md
js-apis-system-parameter.md
js-apis-system-prompt.md
js-apis-system-request.md
js-apis-system-router.md
js-apis-system-sensor.md
js-apis-system-storage.md
js-apis-system-time.md
js-apis-system-vibrate.md
js-apis-telephony-data.md
js-apis-testRunner.md
js-apis-thermal.md
js-apis-timer.md
js-apis-touchevent.md
js-apis-treemap.md
js-apis-treeset.md
js-apis-uitest.md
js-apis-update.md
js-apis-uri.md
js-apis-uripermissionmanager.md
js-apis-url.md
js-apis-usb.md
js-apis-useriam-userauth.md
js-apis-util.md
js-apis-vector.md
js-apis-vibrator.md
js-apis-volumemanager.md
js-apis-wallpaper.md
js-apis-wantAgent.md
js-apis-webSocket.md
js-apis-webgl.md
js-apis-webgl2.md
js-apis-wifi.md
js-apis-wifiext.md
js-apis-window.md
js-apis-workScheduler.md
js-apis-worker.md
js-apis-xml.md
js-apis-zlib.md
arkui-js
arkui-ts
native-apis
native-lib
Readme-CN.md
security
task-management
telephony
ui
webgl
windowmanager
Readme-CN.md
application-dev-guide-for-gitee.md
application-dev-guide.md
website.md
contribute
design
device-dev
figures
readme
release-notes
OpenHarmony-Overview_zh.md
glossary.md
readme.md
website.md
.gitattributes
.gitignore
CODEOWNERS
DCO.txt
LICENSE
OAT.xml
README.md
README_zh.md
克隆/下载
js-apis-ability-context.md 28.66 KB
一键复制 编辑 原始数据 按行查看 历史

AbilityContext

AbilityContext是Ability的上下文环境,继承自Context。

AbilityContext模块提供允许访问特定于ability的资源的能力,包括对Ability的启动、停止的设置、获取caller通信接口、拉起弹窗请求用户授权等。

说明:

本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
本模块接口仅可在Stage模型下使用。

使用说明

在使用AbilityContext的功能前,需要通过Ability子类实例获取。

import Ability from '@ohos.application.Ability'
class MainAbility extends Ability {
    onWindowStageCreate(windowStage) {
        let context = this.context;
    }
}

属性

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

名称 参数类型 可读 可写 说明
abilityInfo AbilityInfo Abilityinfo相关信息
currentHapModuleInfo HapModuleInfo 当前hap包的信息
config Configuration 表示配置信息。

AbilityContext.startAbility

startAbility(want: Want, callback: AsyncCallback<void>): void

启动Ability。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
callback AsyncCallback<void> callback形式返回启动结果

示例:

var want = {
	"deviceId": "",
	"bundleName": "com.extreme.test",
	"abilityName": "MainAbility"
};
this.context.startAbility(want, (error) => {
    console.log("error.code = " + error.code)
})

AbilityContext.startAbility

startAbility(want: Want, options: StartOptions, callback: AsyncCallback<void>): void

启动Ability。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
options StartOptions 启动Ability所携带的参数。
callback AsyncCallback<void> callback形式返回启动结果。

示例:

var want = {
	"deviceId": "",
	"bundleName": "com.extreme.test",
	"abilityName": "MainAbility"
};
var options = {
	windowMode: 0,
};
this.context.startAbility(want, options, (error) => {
    console.log("error.code = " + error.code)
})

AbilityContext.startAbility

startAbility(want: Want, options?: StartOptions): Promise<void>;

启动Ability。通过Promise返回结果。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
options StartOptions 启动Ability所携带的参数。

返回值:

类型 说明
Promise<void> Promise形式返回启动结果。

示例:

var want = {
	"deviceId": "",
	"bundleName": "com.extreme.test",
	"abilityName": "MainAbility"
};
var options = {
	windowMode: 0,
};
this.context.startAbility(want, options)
.then((data) => {
    console.log('Operation successful.')
}).catch((error) => {
    console.log('Operation failed.');
})

AbilityContext.startAbilityForResult

startAbilityForResult(want: Want, callback: AsyncCallback<AbilityResult>): void;

启动Ability并在结束的时候返回执行结果。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
callback AsyncCallback<AbilityResult> 执行结果回调函数。

示例:

this.context.startAbilityForResult(
    {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo2"},
    (error, result) => {
        console.log("startAbilityForResult AsyncCallback is called, error.code = " + error.code)
        console.log("startAbilityForResult AsyncCallback is called, result.resultCode = " + result.resultCode)
     }
);

AbilityContext.startAbilityForResult

startAbilityForResult(want: Want, options: StartOptions, callback: AsyncCallback<AbilityResult>): void;

启动Ability并在结束的时候返回执行结果。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
options StartOptions 启动Ability所携带的参数。
callback AsyncCallback<AbilityResult> 执行结果回调函数。

示例:

var options = {
  windowMode: 0,
};
this.context.startAbilityForResult(
    {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo2"}, options,
    (error, result) => {
        console.log("startAbilityForResult AsyncCallback is called, error.code = " + error.code)
        console.log("startAbilityForResult AsyncCallback is called, result.resultCode = " + result.resultCode)
     }
);

AbilityContext.startAbilityForResult

startAbilityForResult(want: Want, options?: StartOptions): Promise<AbilityResult>;

启动Ability并在结束的时候返回执行结果。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
options StartOptions 启动Ability所携带的参数。

返回值:

类型 说明
Promise<AbilityResult> Promise形式返回执行结果。

示例:

var options = {
  windowMode: 0,
};
this.context.startAbilityForResult({bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo2"}, options).then((result) => {
    console.log("startAbilityForResult Promise.resolve is called, result.resultCode = " + result.resultCode)
}, (error) => {
    console.log("startAbilityForResult Promise.Reject is called, error.code = " + error.code)
})

AbilityContext.startAbilityForResultWithAccount

startAbilityForResultWithAccount(want: Want, accountId: number, callback: AsyncCallback<AbilityResult>): void;

启动一个Ability并在该Ability帐号销毁时返回执行结果(callback形式)。

需要权限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
accountId number 需要启动的accountId。
callback AsyncCallback<AbilityResult> 启动Ability的回调函数,返回Ability结果。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
this.context.startAbilityWithAccount(want, accountId, (err, data) => {
  console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
  console.log('---------- startAbilityWithAccount success, data:  -----------', data);
});

AbilityContext.startAbilityForResultWithAccount

startAbilityForResultWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback<void>): void;

启动一个Ability并在该Ability帐号销毁时返回执行结果(callback形式)。

需要权限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
accountId number 需要启动的accountId。
options StartOptions 启动Ability所携带的参数。
callback AsyncCallback<void> 启动Ability的回调函数。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityForResultWithAccount(want, accountId, options, (err) => {
  console.log('---------- startAbilityForResultWithAccount fail, err:  -----------', err);
});

AbilityContext.startAbilityForResultWithAccount

startAbilityForResultWithAccount(want: Want, accountId: number, options?: StartOptions): Promise<AbilityResult>;

启动一个Ability并在该Ability帐号销毁时返回执行结果(callback形式)。

需要权限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
accountId number 需要启动的accountId。
options StartOptions 启动Ability所携带的参数。

返回值:

类型 说明
Promise<AbilityResult> 返回一个Promise,包含Ability结果。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityForResultWithAccount(want, accountId, options)
  .then((data) => {
      console.log('---------- startAbilityForResultWithAccount success, data:  -----------', data);
  })
  .catch((err) => {
      console.log('---------- startAbilityForResultWithAccount fail, err:  -----------', err);
  })

AbilityContext.terminateSelf

terminateSelf(callback: AsyncCallback<void>): void;

停止Ability自身。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 回调函数,返回接口调用是否成功的结果。

示例:

this.context.terminateSelf((err) => {
    console.log('terminateSelf result:' + JSON.stringify(err));
});

AbilityContext.terminateSelf

terminateSelf(): Promise<void>;

停止Ability自身。通过Promise返回结果。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

返回值:

类型 说明
Promise<void> 返回一个Promise,包含接口的结果。

示例:

this.context.terminateSelf().then((data) => {
    console.log('success:' + JSON.stringify(data));
}).catch((error) => {
    console.log('failed:' + JSON.stringify(error));
});

AbilityContext.terminateSelfWithResult

terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback<void>): void;

停止Ability,并返回给调用startAbilityForResult 接口调用方的相关信息。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
parameter AbilityResult 返回给调用startAbilityForResult 接口调用方的相关信息。
callback AsyncCallback<void> callback形式返回停止结果。

示例:

this.context.terminateSelfWithResult(
   {
        want: {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo"},
        resultCode: 100
    }, (error) => {
        console.log("terminateSelfWithResult is called = " + error.code)
    }
);

AbilityContext.terminateSelfWithResult

terminateSelfWithResult(parameter: AbilityResult): Promise<void>;

停止Ability,并返回给调用startAbilityForResult 接口相关信息。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
parameter AbilityResult 返回给startAbilityForResult 调用方的信息。

返回值:

类型 说明
Promise<void> promise形式返回停止结果。

示例:

this.context.terminateSelfWithResult(
{
    want: {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo"},
    resultCode: 100
}).then((result) => {
    console.log("terminateSelfWithResult")
}
)

AbilityContext.connectAbility

connectAbility(want: Want, options: ConnectOptions): number;

使用AbilityInfo.AbilityType.SERVICE模板将当前能力连接到一个能力。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
options ConnectOptions 远端对象实例。

返回值:

类型 说明
number 返回Ability连接的结果code。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var options = {
  onConnect(elementName, remote) { console.log('----------- onConnect -----------') },
  onDisconnect(elementName) { console.log('----------- onDisconnect -----------') },
  onFailed(code) { console.log('----------- onFailed -----------') }
}
const result = this.context.connectAbility(want, options);
console.log('----------- connectAbilityResult: ------------', result);

AbilityContext.connectAbilityWithAccount

connectAbilityWithAccount(want: Want, accountId: number, options: ConnectOptions): number;

使用AbilityInfo.AbilityType.SERVICE模板和account将当前能力连接到一个能力。

需要权限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
accountId number 需要启动的accountId。
options ConnectOptions 远端对象实例。

返回值:

类型 说明
number 返回Ability连接的结果code。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  onConnect(elementName, remote) { console.log('----------- onConnect -----------') },
  onDisconnect(elementName) { console.log('----------- onDisconnect -----------') },
  onFailed(code) { console.log('----------- onFailed -----------') }
}
const result = this.context.connectAbilityWithAccount(want, accountId, options);
console.log('----------- connectAbilityResult: ------------', result);

AbilityContext.disconnectAbility

disconnectAbility(connection: number): Promise<void>;

已成功连接接口。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
connection number 连接的能力的数字代码。

返回值:

类型 说明
Promise<void> 返回执行结果。

示例:

var connectionNumber = 0;
this.context.disconnectAbility(connectionNumber).then((data) => {
     console.log('disconnectAbility success, data: ', data);
}).catch((err) => {
     console.log('disconnectAbility fail, err: ', err);
});

AbilityContext.disconnectAbility

disconnectAbility(connection: number, callback:AsyncCallback<void>): void;

已成功连接接口。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
connection number 连接的能力的数字代码。
callback AsyncCallback<void> 表示指定的回调方法。

示例:

  var connectionNumber = 0;
  this.context.disconnectAbility(connectionNumber, (err) => {
     console.log('---------- disconnectAbility fail, err: -----------', err);
  });

AbilityContext.startAbilityByCall

startAbilityByCall(want: Want): Promise<Caller>;

获取指定通用组件服务端的caller通信接口, 并且将指定通用组件服务端拉起并切换到后台。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
want Want 传入需要启动的ability的信息,包含ability名称、包名、设备ID,设备ID缺省或为空表示启动本地ability。

返回值:

类型 说明
Promise<Caller> 获取要通讯的caller对象。

示例:

import Ability from '@ohos.application.Ability';
var caller;
export default class MainAbility extends Ability {
    onWindowStageCreate(windowStage) {
        this.context.startAbilityByCall({
            bundleName: "com.example.myservice",
            abilityName: "MainAbility",
            deviceId: ""
        }).then((obj) => {
            caller = obj;
            console.log('Caller GetCaller Get ' + caller);
        }).catch((e) => {
            console.log('Caller GetCaller error ' + e);
        });
    }
}

AbilityContext.startAbilityWithAccount

startAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback<void>): void;

根据account启动Ability(callback形式)。

需要权限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
accountId number 需要启动的accountId。
callback AsyncCallback<void> 启动Ability的回调函数。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
this.context.startAbilityWithAccount(want, accountId, (err) => {
  console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
});

AbilityContext.startAbilityWithAccount

startAbilityWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback<void>): void;

根据account启动Ability(callback形式)。

需要权限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
accountId number 需要启动的accountId。
options StartOptions 启动Ability所携带的参数。
callback AsyncCallback<void> 启动Ability的回调函数。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityWithAccount(want, accountId, options, (err) => {
  console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
});

AbilityContext.startAbilityWithAccount

startAbilityWithAccount(want: Want, accountId: number, options?: StartOptions): Promise<void>;

根据account启动Ability(Promise形式)。

需要权限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
want Want 启动Ability的want信息。
accountId number 需要启动的accountId。
options StartOptions 启动Ability所携带的参数。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityWithAccount(want, accountId, options)
  .then((data) => {
      console.log('---------- startAbilityWithAccount success, data:  -----------', data);
  })
  .catch((err) => {
      console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
  })

AbilityContext.requestPermissionsFromUser

requestPermissionsFromUser(permissions: Array<string>, requestCallback: AsyncCallback<PermissionRequestResult>) : void;

拉起弹窗请求用户授权。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
permissions Array<string> 权限列表。
callback AsyncCallback<PermissionRequestResult> 回调函数,返回接口调用是否成功的结果。

示例:

     var permissions=['com.example.permission']
     this.context.requestPermissionsFromUser(permissions,(result) => {
     console.log('requestPermissionsFromUserresult:' + JSON.stringify(result));
});

AbilityContext.requestPermissionsFromUser

requestPermissionsFromUser(permissions: Array<string>) : Promise<PermissionRequestResult>;

拉起弹窗请求用户授权。通过Promise返回结果。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
permissions Array<string> 权限列表。

返回值:

类型 说明
Promise<PermissionRequestResult> 返回一个Promise,包含接口的结果。

示例:

 var permissions=['com.example.permission']
     this.context.requestPermissionsFromUser(permissions).then((data) => {
    console.log('success:' + JSON.stringify(data));
}).catch((error) => {
    console.log('failed:' + JSON.stringify(error));
});

AbilityContext.setMissionLabel

setMissionLabel(label: string, callback:AsyncCallback<void>): void;

设置ability在任务中显示的名称。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
label string 显示名称。
callback AsyncCallback<void> 回调函数,返回接口调用是否成功的结果。

示例:

this.context.setMissionLabel("test",(result) => {
    console.log('requestPermissionsFromUserresult:' + JSON.stringify(result));
});

AbilityContext.setMissionLabel

setMissionLabel(label: string): Promise<void>

设置ability在任务中显示的名称。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
label string 显示名称。

返回值:

类型 说明
Promise<void> 返回一个Promise,包含接口的结果。

示例:

this.context.setMissionLabel("test").then((data) => {
    console.log('success:' + JSON.stringify(data));
}).catch((error) => {
    console.log('failed:' + JSON.stringify(error));
});

AbilityContext.setMissionIcon

setMissionIcon(icon: image.PixelMap, callback:AsyncCallback<void>): void;

设置当前ability的任务标签。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
icon image.PixelMap 在最近的任务中显示的能力图标。
callback AsyncCallback<void> 指定的回调函数的结果。

示例:

  import image from '@ohos.multimedia.image'
  var imagePixelMap;
  var color = new ArrayBuffer(0);
  var initializationOptions = {
     size: {
         height: 100,
         width: 100
     }
  };
  image.createPixelMap(color, initializationOptions)
     .then((data) => {
         imagePixelMap = data;
     })
     .catch((err) => {
         console.log('--------- createPixelMap fail, err: ---------', err)
     });
  this.context.setMissionIcon(imagePixelMap, (err) => {
     console.log('---------- setMissionIcon fail, err: -----------', err);
  })

AbilityContext.setMissionIcon

setMissionIcon(icon: image.PixelMap): Promise<void>;

设置当前ability的任务标签。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
icon image.PixelMap 在最近的任务中显示的能力图标。

返回值:

类型 说明
Promise<void> 返回一个Promise,包含接口的结果。

示例:

  import image from '@ohos.multimedia.image'
  var imagePixelMap;
  var color = new ArrayBuffer(0);
  var initializationOptions = {
    size: {
        height: 100,
        width: 100
    }
  };
  image.createPixelMap(color, initializationOptions)
    .then((data) => {
        imagePixelMap = data;
    })
    .catch((err) => {
        console.log('--------- createPixelMap fail, err: ---------', err)
    });
  this.context.setMissionIcon(imagePixelMap)
    .then((data) => {
        console.log('-------------- setMissionIcon success, data: -------------', data);
    })
    .catch((err) => {
        console.log('-------------- setMissionIcon fail, err: -------------', err);
    });

AbilityContext.restoreWindowStage

restoreWindowStage(localStorage: LocalStorage) : void;

恢复ability中的window stage数据。

系统能力:SystemCapability.Ability.AbilityRuntime.Core

参数:

参数名 类型 必填 说明
localStorage image.LocalStorage 用于恢复window stage的存储数据。

示例:

  var storage = new LocalStorage();
  this.context.restoreWindowStage(storage);
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
其他
1
https://gitee.com/openharmony/docs.git
git@gitee.com:openharmony/docs.git
openharmony
docs
docs
OpenHarmony-3.2-Beta1

搜索帮助