# Context模块
Context模块提供了ability或application的上下文的能力,包括允许访问特定于应用程序的资源、请求和验证权限等。
> **说明:**
>
> 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
> 本模块接口仅可在FA模型下使用。
## 使用说明
Context对象是在featureAbility中创建实例,并通过featureAbility的getContext()接口返回,因此在使用Context时,必须导入@ohos.ability.featureAbility库。示例如下:
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir()
```
## Context.getOrCreateLocalDir7+
getOrCreateLocalDir(callback: AsyncCallback\): void
获取应用程序的本地根目录(callback形式)。
如果是第一次调用,将创建目录。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------- |
| callback | AsyncCallback\ | 是 | 返回应用程序的本地根目录。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir((err, data)=>{
console.info("data=" + data);
})
```
## Context.getOrCreateLocalDir7+
getOrCreateLocalDir(): Promise\
获取应用程序的本地根目录(Promise形式)。
如果是第一次调用,将创建目录。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | ----------- |
| Promise\ | 应用程序的本地根目录。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir().then((data) => {
console.info("data=" + data);
});
```
## Context.verifyPermission7+
verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback\): void
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | --------------------------------------- | ---- | -------------------- |
| permission | string | 是 | 指定权限的名称。 |
| options | [PermissionOptions](#permissionoptions) | 是 | 权限选项。 |
| callback | AsyncCallback\ | 是 | 返回权限验证结果,0有权限,-1无权限。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
var context = featureAbility.getContext();
bundle.getBundleInfo('com.context.test', 1, (err,datainfo) =>{
context.verifyPermission("com.example.permission", {uid:datainfo.uid});
});
```
## Context.verifyPermission7+
verifyPermission(permission: string, callback: AsyncCallback\): void
验证系统中运行的当前pid和uid是否具有指定的权限(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ---------------------- | ---- | -------------------- |
| permission | string | 是 | 指定权限的名称。 |
| callback | AsyncCallback\ | 是 | 返回权限验证结果,0有权限,-1无权限。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.verifyPermission("com.example.permission")
```
## Context.verifyPermission7+
verifyPermission(permission: string, options?: PermissionOptions): Promise\
验证系统中运行的特定pid和uid是否具有指定的权限(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | --------------------------------------- | ---- | -------- |
| permission | string | 是 | 指定权限的名称。 |
| options | [PermissionOptions](#permissionoptions) | 否 | 权限选项。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ---------------------------------- |
| Promise\ | 如果pid和uid具有权限,则使用0进行异步回调;否则使用-1回调。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var Permission = {pid:1};
context.verifyPermission('com.context.permission',Permission).then((data) => {
console.info("======================>verifyPermissionCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.requestPermissionsFromUser7+
requestPermissionsFromUser(permissions: Array\, requestCode: number, resultCallback: AsyncCallback<[PermissionRequestResult](#permissionrequestresult)>): void
从系统请求某些权限(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------------- | ---------------------------------------- | ---- | ----------------------------------- |
| permissions | Array\ | 是 | 指示要请求的权限列表。此参数不能为null。 |
| requestCode | number | 是 | 指示要传递给PermissionRequestResult的请求代码。 |
| resultCallback | AsyncCallback<[PermissionRequestResult](#permissionrequestresult)> | 是 | 返回授权结果信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.requestPermissionsFromUser(
["com.example.permission1",
"com.example.permission2",
"com.example.permission3",
"com.example.permission4",
"com.example.permission5"],
1,(err, data)=>{
console.info("====>requestdata====>" + JSON.stringify(data));
console.info("====>requesterrcode====>" + JSON.stringify(err.code));
}
)
```
## Context.getApplicationInfo7+
getApplicationInfo(callback: AsyncCallback\): void
获取有关当前应用程序的信息(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ------------------------------- | ---- | ------------ |
| callback | AsyncCallback\ | 是 | 返回当前应用程序的信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo()
```
## Context.getApplicationInfo7+
getApplicationInfo(): Promise\
获取有关当前应用程序的信息(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ------------------------- | --------- |
| Promise\ | 当前应用程序的信息 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo().then((data) => {
console.info("=====================>getApplicationInfoCallback===================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getBundleName7+
getBundleName(callback: AsyncCallback\): void
获取当前ability的捆绑包名称(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------ |
| callback | AsyncCallback\ | 是 | 返回当前ability的捆绑包名称。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName()
```
## Context.getBundleName7+
getBundleName(): Promise\
获取当前ability的捆绑包名称(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | ---------------- |
| Promise\ | 当前ability的捆绑包名称。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName().then((data) => {
console.info("=======================>getBundleNameCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getDisplayOrientation7+
getDisplayOrientation(callback: AsyncCallback\): void
获取此能力的当前显示方向(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------------------------- | ---- | --------- |
| callback | AsyncCallback\<[bundle.DisplayOrientation](js-apis-bundle.md#displayorientation)> | 是 | 表示屏幕显示方向。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getDisplayOrientation()
```
## Context.getDisplayOrientation7+
getDisplayOrientation(): Promise\;
获取此能力的当前显示方向(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | --------- |
| Promise\<[bundle.DisplayOrientation](js-apis-bundle.md#displayorientation)> | 表示屏幕显示方向。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getDisplayOrientation().then((data) => {
console.info("=======================>getDisplayOrientationCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.setDisplayOrientation7+
setDisplayOrientation(orientation: bundle.DisplayOrientation, callback: AsyncCallback\): void
设置当前能力的显示方向(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ---------------------------------------- | ---- | ------------ |
| orientation | [bundle.DisplayOrientation](js-apis-bundle.md#displayorientation) | 是 | 指示当前能力的新方向。。 |
| callback | AsyncCallback\<[bundle.DisplayOrientation](js-apis-bundle.md#displayorientation)> | 是 | 表示屏幕显示方向。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
var context = featureAbility.getContext();
var orientation=bundle.DisplayOrientation.UNSPECIFIED
context.setDisplayOrientation(orientation, (err) => {
console.log('---------- setDisplayOrientation fail, err: -----------', err);
});
```
## Context.setDisplayOrientation7+
setDisplayOrientation(orientation: bundle.DisplayOrientation): Promise\;
设置当前能力的显示方向(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | ---------------------------------------- |
| orientation | [bundle.DisplayOrientation](js-apis-bundle.md#displayorientation) |
| Promise\<[bundle.DisplayOrientation](js-apis-bundle.md#displayorientation)> | 表示屏幕显示方向。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
var context = featureAbility.getContext();
var orientation=bundle.DisplayOrientation.UNSPECIFIED
context.setDisplayOrientation(orientation).then((data) => {
console.info("=======================>setDisplayOrientationCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.setShowOnLockScreen7+
setShowOnLockScreen(show: boolean, callback: AsyncCallback\): void
设置每当显示锁屏时是否在锁屏顶部显示此功能,使该功能保持激活状态(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | ---------------------------------------- |
| show | boolean | 是 | 指定是否在锁屏顶部显示此功能。值true表示在锁屏上显示,值false表示不显示。 |
| callback | AsyncCallback\ | 是 | 返回回调结果。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var show=true
context.setShowOnLockScreen(show, (err) => {
console.log('---------- setShowOnLockScreen fail, err: -----------', err);
});
```
## Context.setShowOnLockScreen7+
setShowOnLockScreen(show: boolean): Promise\;
设置每当显示锁屏时是否在锁屏顶部显示此功能,使该功能保持激活状态(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------- | ---- | ---------------------------------------- |
| show | boolean | 是 | 指定是否在锁屏顶部显示此功能。值true表示在锁屏上显示,值false表示不显示。 |
**返回值:**
| 类型 | 说明 |
| -------------- | --------------- |
| Promise\ | 使用Promise形式返回结果 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var show=true
context.setShowOnLockScreen(show).then((data) => {
console.info("=======================>setShowOnLockScreenCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.setWakeUpScreen7+
setWakeUpScreen(wakeUp: boolean, callback: AsyncCallback\): void
设置恢复此功能时是否唤醒屏幕。(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | --------------------------------- |
| wakeUp | boolean | 是 | 指定是否唤醒屏幕。值true表示唤醒它,值false表示不唤醒它。 |
| callback | AsyncCallback\ | 是 | 返回回调结果。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var wakeUp=true
context.setWakeUpScreen(wakeUp, (err) => {
console.log('---------- setWakeUpScreen fail, err: -----------', err);
});
```
## Context.setWakeUpScreen7+
setWakeUpScreen(wakeUp: boolean): Promise\;
设置恢复此功能时是否唤醒屏幕。(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ------ | ------- | ---- | --------------------------------- |
| wakeUp | boolean | 是 | 指定是否唤醒屏幕。值true表示唤醒它,值false表示不唤醒它。 |
**返回值:**
| 类型 | 说明 |
| -------------- | --------------- |
| Promise\ | 使用Promise形式返回结果 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var wakeUp=true
context.setWakeUpScreen(wakeUp).then((data) => {
console.info("=======================>setWakeUpScreenCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getProcessInfo7+
getProcessInfo(callback: AsyncCallback\): void
获取有关当前进程的信息,包括进程ID和名称(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | --------------------------- | ---- | ---------- |
| callback | AsyncCallback\ | 是 | 返回当前进程的信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo()
```
## Context.getProcessInfo7+
getProcessInfo(): Promise\
获取有关当前进程的信息,包括进程id和名称(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| --------------------- | ------- |
| Promise\ | 当前进程的信息 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo().then((data) => {
console.info("=======================>getProcessInfoCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getElementName7+
getElementName(callback: AsyncCallback\): void
获取当前ability的ohos.bundle.ElementName对象(callback形式)。
此方法仅适用于页面功能。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | --------------------------- | ---- | -------------------------------------- |
| callback | AsyncCallback\ | 是 | 返回当前ability的ohos.bundle.ElementName对象。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName()
```
## Context.getElementName7+
getElementName(): Promise\
获取当前能力的ohos.bundle.ElementName对象(Promise形式)。
此方法仅适用于页面功能。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------------------------------ |
| Promise\ | 当前ability的ohos.bundle.ElementName对象。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName().then((data) => {
console.info("=======================>getElementNameCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getProcessName7+
getProcessName(callback: AsyncCallback\): void
获取当前进程的名称(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ---------- |
| callback | AsyncCallback\ | 是 | 返回当前进程的名称。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName()
```
## Context.getProcessName7+
getProcessName(): Promise\
获取当前进程的名称(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | ---------- |
| Promise\ | 返回当前进程的名称。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName().then((data) => {
console.info("=======================>getProcessNameCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getCallingBundle7+
getCallingBundle(callback: AsyncCallback\): void
获取调用ability的包名称(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ---------------- |
| callback | AsyncCallback\ | 是 | 返回调用ability的包名称。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle()
```
## Context.getCallingBundle7+
getCallingBundle(): Promise\
获取调用ability的包名称(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | -------------- |
| Promise\ | 调用ability的包名称。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle().then((data) => {
console.info("======================>getCallingBundleCallback====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getCacheDir
getCacheDir(callback: AsyncCallback\): void
获取该应用程序的内部存储目录(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | --------------- |
| callback | AsyncCallback\ | 是 | 返回该应用程序的内部存储目录。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCacheDir((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.getCacheDir
getCacheDir(): Promise\
获取该应用程序的内部存储目录(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | --------------- |
| Promise\ | 获取该应用程序的内部存储目录。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCacheDir().then((data) => {
console.info("======================>getCacheDirPromsie====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getFilesDir
getFilesDir(callback: AsyncCallback\): void
获取内部存储器上此应用程序的文件目录(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------- |
| callback | AsyncCallback\ | 是 | 返回内部存储器上此应用程序的文件目录。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getFilesDir((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.getFilesDir
getFilesDir(): Promise\
获取内部存储器上此应用程序的文件目录(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | ------------------- |
| Promise\ | 返回内部存储器上此应用程序的文件目录。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getFilesDir().then((data) => {
console.info("======================>getFilesDirPromsie====================>");
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getOrCreateDistributedDir7+
getOrCreateDistributedDir(callback: AsyncCallback\): void
获取Ability或应用的分布式文件路径。
如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ---------------------------------------- |
| callback | AsyncCallback\ | 是 | 回调函数,可以在回调函数中处理接口返回值,返回Ability或应用的分布式文件路径。如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateDistributedDir((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.getOrCreateDistributedDir7+
getOrCreateDistributedDir(): Promise\
获取Ability或应用的分布式文件路径。
如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | ----------------------------------- |
| Promise\ | Ability或应用的分布式文件路径。如果是第一次调用,则将创建目录。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateDistributedDir().then((data) => {
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getAppType7+
getAppType(callback: AsyncCallback\): void
获取此应用的类型(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | -------------------------------- |
| callback | AsyncCallback\ | 是 | 回调函数,可以在回调函数中处理接口返回值,返回此应用程序的类型。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppType((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.getAppType7+
getAppType(): Promise\
获取此应用的类型(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------- | ------------------ |
| Promise\ | Promise形式返回此应用的类型。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppType().then((data) => {
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getHapModuleInfo7+
getHapModuleInfo(callback: AsyncCallback\): void
获取应用的ModuleInfo对象(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------------------------- | ---- | --------------------------------------- |
| callback | AsyncCallback\<[HapModuleInfo](js-apis-bundle-HapModuleInfo.md)> | 是 | 回调函数,可以在回调函数中处理接口返回值,返回应用的ModuleInfo对象。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getHapModuleInfo((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.getHapModuleInfo7+
getHapModuleInfo(): Promise\
获取应用的ModuleInfo对象(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | ------------------ |
| Promise\<[HapModuleInfo](js-apis-bundle-HapModuleInfo.md)> | 返回应用的ModuleInfo对象。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getHapModuleInfo().then((data) => {
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getAppVersionInfo7+
getAppVersionInfo(callback: AsyncCallback\): void
获取应用的版本信息(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------------------------- | ---- | ------------------------------ |
| callback | AsyncCallback\<[AppVersionInfo](#appversioninfo)> | 是 | 回调函数,可以在回调函数中处理接口返回值,返回应用版本信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppVersionInfo((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.getAppVersionInfo7+
getAppVersionInfo(): Promise\
获取应用的版本信息(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | --------- |
| Promise\<[AppVersionInfo](#appversioninfo)> | 返回应用版本信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppVersionInfo().then((data) => {
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getAbilityInfo7+
getAbilityInfo(callback: AsyncCallback\): void
查询当前归属Ability详细信息(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------------------------- | ---- | --------------------------------------- |
| callback | AsyncCallback\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | 是 | 回调函数,可以在回调函数中处理接口返回值,返回当前归属Ability详细信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAbilityInfo((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.getAbilityInfo7+
getAbilityInfo(): Promise\
查询当前归属Ability详细信息(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | ------------------ |
| Promise\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | 返回当前归属Ability详细信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAbilityInfo().then((data) => {
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.getApplicationContext7+
getApplicationContext(): Context
获取应用上下文信息。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ------- | ---------- |
| Context | 返回应用上下文信息。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext().getApplicationContext();
```
## Context.isUpdatingConfigurations7+
isUpdatingConfigurations(callback: AsyncCallback\): void;
检查此能力的配置是否正在更改(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ----------------------- | ---- | ----------------------------- |
| callback | AsyncCallback\ | 是 | 如果该能力的配置正在更改,则为true,否则为false。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.isUpdatingConfigurations((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.isUpdatingConfigurations7+
isUpdatingConfigurations(): Promise\;
检查此能力的配置是否正在更改(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| ----------------- | ----------------------------- |
| Promise\ | 如果该能力的配置正在更改,则为true,否则为false。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.isUpdatingConfigurations().then((data) => {
console.info("====>data====>" + JSON.stringify(data));
});
```
## Context.printDrawnCompleted7+
printDrawnCompleted(callback: AsyncCallback\): void;
通知系统绘制此页面功能所需的时间(callback形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | ----------- |
| callback | AsyncCallback\ | 是 | 表示被指定的回调方法。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.printDrawnCompleted((err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
```
## Context.printDrawnCompleted7+
printDrawnCompleted(): Promise\;
通知系统绘制此页面功能所需的时间(Promise形式)。
**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
**返回值:**
| 类型 | 说明 |
| -------------- | --------------- |
| Promise\ | 以Promise形式返回结果。 |
**示例:**
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.printDrawnCompleted().then((data) => {
console.info("====>data====>" + JSON.stringify(data));
});
```
## PermissionOptions7+
**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | ---- | ------ | ---- | ----- |
| pid | 只读 | number | 否 | 进程id。 |
| uid | 只读 | number | 否 | 用户id。 |
## PermissionRequestResult7+
**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | ---- | -------------- | ---- | ---------- |
| requestCode | 只读 | number | 是 | 用户传入的请求代码。 |
| permissions | 只读 | Array\ | 是 | 用户传入的权限。 |
| authResults | 只读 | Array\ | 是 | 请求权限的结果。 |
## AppVersionInfo7+
**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ----------- | ------ | ---- | ---- | ------- |
| appName | string | 是 | 否 | 模块名称。 |
| versionCode | number | 是 | 否 | 模块描述信息。 |
| versionName | string | 是 | 否 | 描述信息ID。 |