Context模块

导入模块

import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'

Context对象是在featureAbility中创建实例,并通过featureAbility的getContext()接口返回,因此在使用Context时,必须导入@ohos.ability.featureAbility库。示例如下:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir()

Context.getOrCreateLocalDir

getOrCreateLocalDir(callback: AsyncCallback<string>): void

获取应用程序的本地根目录(callback形式)。

如果是第一次调用,将创建目录。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 返回应用程序的本地根目录。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir((err, data)=>{
    console.info("data=" + data);
})

Context.getOrCreateLocalDir

getOrCreateLocalDir(): Promise<string>

获取应用程序的本地根目录(Promise形式)。

如果是第一次调用,将创建目录。

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

返回值:

类型 说明
Promise<string> 应用程序的本地根目录。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir().then((data) => {
    console.info("data=" + data);
});

Context.verifyPermission

verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback<number>): void

验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)。

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

参数:

名称 类型 必填 描述
permission string 指定权限的名称。
options PermissionOptions 权限选项。
callback AsyncCallback<number> 返回权限验证结果,0有权限,-1无权限。

示例:

import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
var context = featureAbility.getContext();
bundle.getBundleInfo('com.context.test', 1, (datainfo) =>{
	context.verifyPermission("com.example.permission", datainfo.uid);
});

Context.verifyPermission

verifyPermission(permission: string, callback: AsyncCallback<number>): void

验证系统中运行的当前pid和uid是否具有指定的权限(callback形式)。

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

参数:

名称 类型 必填 描述
permission string 指定权限的名称。
callback AsyncCallback<number> 返回权限验证结果,0有权限,-1无权限。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.verifyPermission("com.example.permission")

Context.verifyPermission

verifyPermission(permission: string, options?: PermissionOptions): Promise<number>

验证系统中运行的特定pid和uid是否具有指定的权限(Promise形式)。

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

参数:

名称 类型 必填 描述
permission string 指定权限的名称。
options PermissionOptions 权限选项。

返回值:

类型 说明
Promise<number> 如果pid和uid具有权限,则使用0进行异步回调;否则使用-1回调。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var Permission = context.PermissionOptions(1,1);
context.verifyPermission('com.context.permission',Permission).then((data) => {
    console.info("======================>verifyPermissionCallback====================>");
    console.info("====>data====>" + JSON.stringify(data));
});

Context.requestPermissionsFromUser

requestPermissionsFromUser(permissions: Array<string>, requestCode: number, resultCallback: AsyncCallback<PermissionRequestResult>): void

从系统请求某些权限(callback形式)。

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

参数:

名称 类型 必填 描述
permissions Array<string> 指示要请求的权限列表。此参数不能为null。
requestCode number 指示要传递给PermissionRequestResult的请求代码。
resultCallback AsyncCallback<PermissionRequestResult> 返回授权结果信息。

示例:

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.getApplicationInfo

getApplicationInfo(callback: AsyncCallback<ApplicationInfo>): void

获取有关当前应用程序的信息(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<ApplicationInfo> 返回当前应用程序的信息。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo()

Context.getApplicationInfo

getApplicationInfo(): Promise<ApplicationInfo>

获取有关当前应用程序的信息(Promise形式)。

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

返回值:

类型 说明
Promise<ApplicationInfo> 当前应用程序的信息

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo().then((data) => {
    console.info("=====================>getApplicationInfoCallback===================>");
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getBundleName

getBundleName(callback: AsyncCallback<string>): void

获取当前ability的捆绑包名称(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 返回当前ability的捆绑包名称。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName()

Context.getBundleName

getBundleName(): Promise<string>

获取当前ability的捆绑包名称(Promise形式)。

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

返回值:

类型 说明
Promise<string> 当前ability的捆绑包名称。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName().then((data) => {
    console.info("=======================>getBundleNameCallback====================>");
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getProcessInfo

getProcessInfo(callback: AsyncCallback<ProcessInfo>): void

获取有关当前进程的信息,包括进程ID和名称(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<ProcessInfo> 返回当前进程的信息。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo()

Context.getProcessInfo

getProcessInfo(): Promise<ProcessInfo>

获取有关当前进程的信息,包括进程id和名称(Promise形式)。

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

返回值:

类型 说明
Promise<ProcessInfo> 当前进程的信息

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo().then((data) => {
    console.info("=======================>getProcessInfoCallback====================>");
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getElementName

getElementName(callback: AsyncCallback<ElementName>): void

获取当前ability的ohos.bundle.ElementName对象(callback形式)。

此方法仅适用于页面功能。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<ElementName> 返回当前ability的ohos.bundle.ElementName对象。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName()

Context.getElementName

getElementName(): Promise<ElementName>

获取当前能力的ohos.bundle.ElementName对象(Promise形式)。

此方法仅适用于页面功能。

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

返回值:

类型 说明
Promise<ElementName> 当前ability的ohos.bundle.ElementName对象。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName().then((data) => {
    console.info("=======================>getElementNameCallback====================>");
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getProcessName

getProcessName(callback: AsyncCallback<string>): void

获取当前进程的名称(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 返回当前进程的名称。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName()

Context.getProcessName

getProcessName(): Promise<string>

获取当前进程的名称(Promise形式)。

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

返回值:

类型 说明
Promise<string> 返回当前进程的名称。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName().then((data) => {
    console.info("=======================>getProcessNameCallback====================>");
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getCallingBundle

getCallingBundle(callback: AsyncCallback<string>): void

获取调用ability的包名称(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 返回调用ability的包名称。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle()

Context.getCallingBundle

getCallingBundle(): Promise<string>

获取调用ability的包名称(Promise形式)。

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

返回值:

类型 说明
Promise<string> 调用ability的包名称

示例:

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<string>): void

获取该应用程序的内部存储目录(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 返回该应用程序的内部存储目录。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getCacheDir();
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<string>

获取该应用程序的内部存储目录(Promise形式)。

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

返回值:

类型 说明
Promise<string> 获取该应用程序的内部存储目录

示例:

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<string>): void

获取内部存储器上此应用程序的文件目录(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 返回内部存储器上此应用程序的文件目录。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getFilesDir();
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<string>

获取内部存储器上此应用程序的文件目录(Promise形式)。

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

返回值:

类型 说明
Promise<string> 返回内部存储器上此应用程序的文件目录。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getFilesDir().then((data) => {
    console.info("======================>getFilesDirPromsie====================>");
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getOrCreateDistributedDir

getOrCreateDistributedDir(callback: AsyncCallback<string>): void

获取Ability或应用的分布式文件路径。

如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 回调函数,可以在回调函数中处理接口返回值,返回Ability或应用的分布式文件路径。如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径。

示例:

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.getOrCreateDistributedDir

getOrCreateDistributedDir(): Promise<string>

获取Ability或应用的分布式文件路径。

如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径(Promise形式)。

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

返回值:

类型 说明
Promise<string> Ability或应用的分布式文件路径。如果是第一次调用,则将创建目录。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateDistributedDir().then((data) => {
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getAppType

getAppType(callback: AsyncCallback<string>): void

获取此应用的类型(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<string> 回调函数,可以在回调函数中处理接口返回值,返回此应用程序的类型。

示例:

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.getAppType

getAppType(): Promise<string>

获取此应用的类型(Promise形式)。

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

返回值:

类型 说明
Promise<string> Promise形式返回此应用的类型。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppType().then((data) => {
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getHapModuleInfo

getHapModuleInfo(callback: AsyncCallback<HapModuleInfo>): void

获取应用的ModuleInfo对象(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<HapModuleInfo> 回调函数,可以在回调函数中处理接口返回值,返回应用的ModuleInfo对象。

示例:

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.getHapModuleInfo

getHapModuleInfo(): Promise<HapModuleInfo>

获取应用的ModuleInfo对象(Promise形式)。

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

返回值:

类型 说明
Promise<HapModuleInfo> Promise形式返回应用的ModuleInfo对象。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getHapModuleInfo().then((data) => {
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getAppVersionInfo

getAppVersionInfo(callback: AsyncCallback<HapModuleInfo>): void

获取应用的版本信息(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<AppVersionInfo> 回调函数,可以在回调函数中处理接口返回值,返回应用版本信息。

示例:

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.getAppVersionInfo

getAppVersionInfo(): Promise<AppVersionInfo>

获取应用的版本信息(Promise形式)。

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

返回值:

类型 说明
Promise<AppVersionInfo> 返回应用版本信息。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppVersionInfo().then((data) => {
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getAbilityInfo

getAbilityInfo(callback: AsyncCallback<AbilityInfo>): void

查询当前归属Ability详细信息(callback形式)。

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

参数:

名称 类型 必填 描述
callback AsyncCallback<AbilityInfo> 回调函数,可以在回调函数中处理接口返回值,返回当前归属Ability详细信息。

示例:

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.getAbilityInfo

getAbilityInfo(): Promise<AbilityInfo>

查询当前归属Ability详细信息(Promise形式)。

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

返回值:

类型 说明
Promise<AbilityInfo> 返回当前归属Ability详细信息。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAbilityInfo().then((data) => {
    console.info("====>data====>" + JSON.stringify(data));
});

Context.getApplicationContext

getApplicationContext(): Context

获取应用上下文信息。

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

返回值:

类型 说明
Context 返回应用上下文信息。

示例:

import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext().getApplicationContext();

PermissionOptions

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

名称 读写属性 类型 必填 描述
pid 只读 number 进程id。
uid 只读 number 用户id。

PermissionRequestResult

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

名称 读写属性 类型 必填 描述
requestCode 只读 number 用户传入的请求代码。
permissions 只读 Array<string> 用户传入的权限。
authResults 只读 Array<number> 请求权限的结果。

HapModuleInfo

Hap模块信息

名称 类型 可读 可写 说明
name string 模块名称
description string 模块描述信息
descriptionId number 描述信息ID
icon string 模块图标
label string 模块标签
labelId number 模块标签ID
iconId number 模块图标ID
backgroundImg string 模块背景图片
supportedModes number 模块支持的模式
reqCapabilities Array<string> 模块运行需要的能力
deviceTypes Array<string> 支持运行的设备类型
abilityInfo Array<AbilityInfo> Ability信息
moduleName string 模块名
mainAbilityName string 入口Ability名称
installationFree boolean 是否支持免安装
mainElementName string 入口ability信息

AppVersionInfo

名称 类型 可读 可写 说明
appName string 模块名称
versionCode number 模块描述信息
versionName string 描述信息ID