电子说
Context模块提供了ability或application的上下文的能力,包括允许访问特定于应用程序的资源、请求和验证权限等。
说明:
本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
本模块接口仅可在FA模型下使用。
Context对象是在featureAbility中创建实例,并通过featureAbility的getContext()接口返回,因此在使用Context时,必须导入@ohos.ability.featureAbility库。示例如下:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir()
开发前请熟悉鸿蒙开发指导文档:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
getOrCreateLocalDir(callback: AsyncCallback): void
获取应用程序的本地根目录(callback形式)。
如果是第一次调用,将创建目录。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回应用程序的本地根目录。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir((err, data)= >{
console.info("data=" + data);
})
getOrCreateLocalDir(): Promise
获取应用程序的本地根目录(Promise形式)。
如果是第一次调用,将创建目录。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 应用程序的本地根目录。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir().then((data) = > {
console.info("data=" + data);
});
verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback): void
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
permission | string | 是 | 指定权限的名称。 |
options | [PermissionOptions] | 是 | 权限选项。 |
callback | AsyncCallback | 是 | 返回权限验证结果,0有权限,-1无权限。 |
示例:
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});
});
verifyPermission(permission: string, callback: AsyncCallback): void
验证系统中运行的当前pid和uid是否具有指定的权限(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
permission | string | 是 | 指定权限的名称。 |
callback | AsyncCallback | 是 | 返回权限验证结果,0有权限,-1无权限。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.verifyPermission("com.example.permission")
verifyPermission(permission: string, options?: PermissionOptions): Promise
验证系统中运行的特定pid和uid是否具有指定的权限(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
permission | string | 是 | 指定权限的名称。 |
options | [PermissionOptions] | 否 | 权限选项。 |
返回值:
类型 | 说明 |
---|---|
Promise | 如果pid和uid具有权限,则使用0进行异步回调;否则使用-1回调。 |
示例:
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));
});
requestPermissionsFromUser(permissions: Array, requestCode: number, resultCallback: AsyncCallback[[PermissionRequestResult]]): void
从系统请求某些权限(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
permissions | Array | 是 | 指示要请求的权限列表。此参数不能为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));
}
)
getApplicationInfo(callback: AsyncCallback): void
获取有关当前应用程序的信息(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回当前应用程序的信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo()
getApplicationInfo(): Promise
获取有关当前应用程序的信息(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 当前应用程序的信息 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo().then((data) = > {
console.info("===================== >getApplicationInfoCallback=================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
getBundleName(callback: AsyncCallback): void
获取当前ability的捆绑包名称(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回当前ability的捆绑包名称。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName()
getBundleName(): Promise
获取当前ability的捆绑包名称(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 当前ability的捆绑包名称。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName().then((data) = > {
console.info("======================= >getBundleNameCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
getProcessInfo(callback: AsyncCallback): void
获取有关当前进程的信息,包括进程ID和名称(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回当前进程的信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo()
getProcessInfo(): Promise
获取有关当前进程的信息,包括进程id和名称(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 当前进程的信息 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo().then((data) = > {
console.info("======================= >getProcessInfoCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
getElementName(callback: AsyncCallback): void
获取当前ability的ohos.bundle.ElementName对象(callback形式)。
此方法仅适用于页面功能。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回当前ability的ohos.bundle.ElementName对象。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName()
getElementName(): Promise
获取当前能力的ohos.bundle.ElementName对象(Promise形式)。
此方法仅适用于页面功能。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 当前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));
});
getProcessName(callback: AsyncCallback): void
获取当前进程的名称(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回当前进程的名称。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName()
getProcessName(): Promise
获取当前进程的名称(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 返回当前进程的名称。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName().then((data) = > {
console.info("======================= >getProcessNameCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
getCallingBundle(callback: AsyncCallback): void
获取调用ability的包名称(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回调用ability的包名称。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle()
getCallingBundle(): Promise
获取调用ability的包名称(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 调用ability的包名称 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle().then((data) = > {
console.info("====================== >getCallingBundleCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
getCacheDir(callback: AsyncCallback): void
获取该应用程序的内部存储目录(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回该应用程序的内部存储目录。 |
示例:
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));
});
getCacheDir(): Promise
获取该应用程序的内部存储目录(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 获取该应用程序的内部存储目录 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCacheDir().then((data) = > {
console.info("====================== >getCacheDirPromsie==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
getFilesDir(callback: AsyncCallback): void
获取内部存储器上此应用程序的文件目录(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回内部存储器上此应用程序的文件目录。 |
示例:
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));
});
getFilesDir(): Promise
获取内部存储器上此应用程序的文件目录(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | 返回内部存储器上此应用程序的文件目录。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getFilesDir().then((data) = > {
console.info("====================== >getFilesDirPromsie==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
getOrCreateDistributedDir(callback: AsyncCallback): void
获取Ability或应用的分布式文件路径。
如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 回调函数,可以在回调函数中处理接口返回值,返回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));
});
getOrCreateDistributedDir(): Promise
获取Ability或应用的分布式文件路径。
如果分布式文件路径不存在,系统将创建一个路径并返回创建的路径(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | Ability或应用的分布式文件路径。如果是第一次调用,则将创建目录。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateDistributedDir().then((data) = > {
console.info("==== >data==== >" + JSON.stringify(data));
});
getAppType(callback: AsyncCallback): void
获取此应用的类型(callback形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
参数:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 回调函数,可以在回调函数中处理接口返回值,返回此应用程序的类型。 |
示例:
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));
});
getAppType(): Promise
获取此应用的类型(Promise形式)。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Promise | Promise形式返回此应用的类型。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppType().then((data) = > {
console.info("==== >data==== >" + JSON.stringify(data));
});
getHapModuleInfo(callback: AsyncCallback): 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));
});
getHapModuleInfo(): Promise
获取应用的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));
});
getAppVersionInfo(callback: AsyncCallback): 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));
});
getAppVersionInfo(): Promise
获取应用的版本信息(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));
});
getAbilityInfo(callback: AsyncCallback): 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));
});
getAbilityInfo(): Promise
查询当前归属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));
});
getApplicationContext(): Context
获取应用上下文信息。
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
类型 | 说明 |
---|---|
Context | 返回应用上下文信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext().getApplicationContext();
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
名称 | 读写属性 | 类型 | 必填 | 描述 |
---|---|---|---|---|
pid | 只读 | number | 否 | 进程id。 |
uid | 只读 | number | 否 | 用户id。 |
系统能力 :SystemCapability.Ability.AbilityRuntime.Core
名称 | 读写属性 | 类型 | 必填 | 描述 |
---|---|---|---|---|
requestCode | 只读 | number | 是 | 用户传入的请求代码。 |
permissions | 只读 | Array | 是 | 用户传入的权限。 |
authResults | 只读 | Array | 是 | 请求权限的结果。 |
Hap模块信息
名称 | 类型 | 可读 | 可写 | 说明 |
---|---|---|---|---|
name | string | 是 | 否 | 模块名称 |
description | string | 是 | 否 | 模块描述信息 |
descriptionId | number | 是 | 否 | 描述信息ID |
icon | string | 是 | 否 | 模块图标 |
label | string | 是 | 否 | 模块标签 |
labelId | number | 是 | 否 | 模块标签ID |
iconId | number | 是 | 否 | 模块图标ID |
backgroundImg | string | 是 | 否 | 模块背景图片 |
supportedModes | number | 是 | 否 | 模块支持的模式 |
reqCapabilities | Array | 是 | 否 | 模块运行需要的能力 |
deviceTypes | Array | 是 | 否 | 支持运行的设备类型 |
abilityInfo | Array | 是 | 否 | Ability信息 |
moduleName | string | 是 | 否 | 模块名 |
mainAbilityName | string | 是 | 否 | 入口Ability名称 |
installationFree | boolean | 是 | 否 | 是否支持免安装 |
mainElementName | string | 是 | 否 | 入口ability信息 |
名称 | 类型 | 可读 | 可写 | 说明 |
---|---|---|---|---|
appName | string | 是 | 否 | 模块名称 |
versionCode | number | 是 | 否 | 模块描述信息 |
versionName | string | 是 | 否 | 描述信息ID |
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !