提交 275e470e 编写于 作者: O openharmony_ci 提交者: Gitee

!1061 Update js-apis

Merge pull request !1061 from jsjzju/OpenHarmony-3.1-Beta
# Context模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| Context.getOrCreateLocalDir(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getOrCreateLocalDir() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options?: PermissionOptions) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.requestPermissionsFromUser(permissions: Array\<string>, requestCode: number, resultCallback: AsyncCallback\<PermissionRequestResult>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo(callback: AsyncCallback\<ApplicationInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo(callback: AsyncCallback\<ProcessInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName(callback: AsyncCallback\<ElementName>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
**ohos.permission.RUNNING_LOCK permission**
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
```
#### Context.getOrCreateLocalDir(callback: AsyncCallback\<string>)
- 接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(callback形式)
- getOrCreateLocalDir参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback\<string>) | 是 | 被指定的回调方法 |
- 返回值
根目录
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir()
```
#### Context.getOrCreateLocalDir()
- 接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(Promise形式)
- 返回值
根目录
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir().then((void) => {
console.info("==========================>getOrCreateLocalDirCallback=======================>");
});
```
#### Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback\<number>)
- 接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)
- verifyPermission参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | ---------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 | PermissionOptions | 是 | 进程id |
| callback | 只读 | AsyncCallback\<number> | 是 | 被指定的回调方法 |
- PermissionOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------ |
| pid | 只读 | number | 否 | 进程id |
| uid | 只读 | number | 否 | 用户id |
- 返回值
如果PID和UID具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
var context = featureAbility.getContext();
var datainfo = await bundle.getBundleInfo('com.context.test',1);
context.verifyPermission("com.example.permission",datainfo.uid,)
```
#### Context.verifyPermission(permission: string, callback: AsyncCallback\<number>)
- 接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------------- | ---- | ---------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| callback | 只读 | AsyncCallback\<number>) | 是 | 被指定的回调方法 |
- 返回值
如果PID和UID具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.verifyPermission("com.example.permission")
```
#### Context.verifyPermission(permission: string, options?: PermissionOptions)
- 接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(Promise形式)
- verifyPermission参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------- | ---- | -------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 | PermissionOptions | 否 | 进程id |
- PermissionOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------ |
| pid | 只读 | number | 否 | 进程id |
| uid | 只读 | number | 否 | 用户id |
- 返回值
如果PID和UID具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var Permission = context.PermissionOptions(1,1);
context.getOrCreateLocalDir('com.context.permission',Permission).then((void) => {
console.info("==========================>verifyPermissionCallback=======================>");
});
```
#### Context.requestPermissionsFromUser(permissions: Array\<string>, requestCode: number, resultCallback: AsyncCallback\<PermissionRequestResult>)
- 接口说明
从系统请求某些权限(callback形式)
- requestPermissionsFromUser参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ---------------------------------------- | ---- | --------------------------------------------- |
| permissions | 只读 | Array\<string> | 是 | 指示要请求的权限列表。此参数不能为null |
| requestCode | 只读 | number | 是 | 指示要传递给PermissionRequestResult的请求代码 |
| resultCallback | 只读 | AsyncCallback\<PermissionRequestResult>) | 是 | 被指定的回调方法 |
- PermissionRequestResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------- | ---- | ------------------ |
| requestCode | 只读 | number | 是 | 用户传入的请求代码 |
| permissions | 只读 | Array\<string> | 是 | 用户传入的权限 |
| authResults | 只读 | Array\<number> | 是 | 求权限的结果 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir(
["com.example.permission1",
"com.example.permission2",
"com.example.permission3",
"com.example.permission4",
"com.example.permission5"],
1,
)
```
#### Context.getApplicationInfo(callback: AsyncCallback\<ApplicationInfo>)
- 接口说明
获取有关当前应用程序的信息(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<ApplicationInfo> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo()
```
#### Context.getApplicationInfo()
- 接口说明
获取有关当前应用程序的信息(Promise形式)
- 参数描述
Null
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo().then((void) => {
console.info("==========================>getApplicationInfoCallback=======================>");
});
```
#### Context.getBundleName(callback: AsyncCallback\<string>)
- 接口说明
获取当前ability的捆绑包名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<string> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName()
```
#### Context.getBundleName()
- 接口说明
获取当前ability的捆绑包名称(Promise形式)
- 参数描述
Null
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName().then((void) => {
console.info("==========================>getBundleNameCallback=======================>");
});
```
#### Context.getProcessInfo(callback: AsyncCallback\<ProcessInfo>)
- 接口说明
获取有关当前进程的信息,包括进程ID和名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<ProcessInfo> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo()
```
#### Context.getProcessInfo()
- 接口说明
获取有关当前进程的信息,包括进程ID和名称(Promise形式)
- 参数描述
Null
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo().then((void) => {
console.info("==========================>getProcessInfoCallback=======================>");
});
```
#### Context.getElementName(callback: AsyncCallback\<ElementName>)
- 接口说明
获取当前能力的ohos.bundle.ElementName对象。此方法仅适用于页面功能(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<ElementName> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName()
```
#### Context.getElementName()
- 接口说明
获取当前能力的ohos.bundle.ElementName对象。此方法仅适用于页面功能(Promise形式)
- 参数描述
Null
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName().then((void) => {
console.info("==========================>getElementNameCallback=======================>");
});
```
####
#### Context.getProcessName(callback: AsyncCallback\<string>)
- 接口说明
获取当前进程的名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<string> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName()
```
#### Context.getProcessName()
- 接口说明
获取当前进程的名称(Promise形式)
- 参数描述
Null
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName().then((void) => {
console.info("==========================>getProcessNameCallback=======================>");
});
```
#### Context.getCallingBundle(callback: AsyncCallback\<string>)
- 接口说明
获取调用当前能力的能力的捆绑包名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<string> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle()
```
#### Context.getCallingBundle()
- 接口说明
获取调用当前能力的能力的捆绑包名称(Promise形式)
- 参数描述
Null
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle().then((void) => {
console.info("==========================>getCallingBundleCallback=======================>");
});
```
# Context模块
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| Context.getOrCreateLocalDir(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getOrCreateLocalDir() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options?: PermissionOptions) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.requestPermissionsFromUser(permissions: Array\<string>, requestCode: number, resultCallback: AsyncCallback\<PermissionRequestResult>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo(callback: AsyncCallback\<ApplicationInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo(callback: AsyncCallback\<ProcessInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName(callback: AsyncCallback\<ElementName>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle(callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
## 导入模块
```js
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
```
Context对象是在featureAbility中创建实例,并通过featureAbility的getContext()接口返回,因此在使用Context时,必须导入@ohos.ability.featureAbility库。示例如下:
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir()
```
## Context.getOrCreateLocalDir(callback: AsyncCallback<string>)
- 接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(callback形式)
- getOrCreateLocalDir参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------ |
| callback | 只读 | AsyncCallback\<string> | 是 | 返回应用程序的本地根目录 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir((err, data)=>{
console.info("data=" + data);
})
```
## Context.getOrCreateLocalDir()
- 接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(Promise形式)
- 返回值
| 类型 | 说明 |
| --------------- | -------------------- |
| Promise<string> | 应用程序的本地根目录 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir().then((void) => {
console.info("==========================>getOrCreateLocalDirCallback=======================>");
});
```
## PermissionOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------ |
| pid | 只读 | number | 否 | 进程id |
| uid | 只读 | number | 否 | 用户id |
## Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback<number>)
- 接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------------------------------------- | ---- | ----------------------------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 | [PermissionOptions](#PermissionOptions类型说明) | 是 | 进程id |
| callback | 只读 | AsyncCallback\<number> | 是 | 返回权限验证结果,0有权限,-1无权限 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
var context = featureAbility.getContext();
var datainfo = await bundle.getBundleInfo('com.context.test',1);
context.verifyPermission("com.example.permission",datainfo.uid)
```
## Context.verifyPermission(permission: string, callback: AsyncCallback<number>)
- 接口说明
验证系统中运行的特定pid和uid是否具有指定的权限(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | ----------------------------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| callback | 只读 | AsyncCallback\<number> | 是 | 返回权限验证结果,0有权限,-1无权限 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.verifyPermission("com.example.permission")
```
## Context.verifyPermission(permission: string, options?: PermissionOptions)
- 接口说明
验证系统中运行的特定pid和uid是否具有指定的权限(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------------------------------------- | ---- | -------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 | [PermissionOptions](#PermissionOptions类型说明) | 否 | 进程id |
- 返回值
| 类型 | 说明 |
| --------------- | ------------------------------------------------------------ |
| Promise<number> | 如果pid和uid具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var Permission = context.PermissionOptions(1,1);
context.getOrCreateLocalDir('com.context.permission',Permission).then((void) => {
console.info("==========================>verifyPermissionCallback=======================>");
});
```
## PermissionRequestResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------- | ---- | ------------------ |
| requestCode | 只读 | number | 是 | 用户传入的请求代码 |
| permissions | 只读 | Array\<string> | 是 | 用户传入的权限 |
| authResults | 只读 | Array\<number> | 是 | 求权限的结果 |
## Context.requestPermissionsFromUser(permissions: Array<string>, requestCode: number, resultCallback: AsyncCallback<[PermissionRequestResult](#PermissionRequestResult类型说明)>)
- 接口说明
从系统请求某些权限(callback形式)
- requestPermissionsFromUser参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------------------------------------------------------ | ---- | --------------------------------------------- |
| permissions | 只读 | Array\<string> | 是 | 指示要请求的权限列表。此参数不能为null |
| requestCode | 只读 | number | 是 | 指示要传递给PermissionRequestResult的请求代码 |
| resultCallback | 只读 | AsyncCallback\<[PermissionRequestResult](#PermissionRequestResult类型说明)> | 是 | 返回授权结果信息 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir(
["com.example.permission1",
"com.example.permission2",
"com.example.permission3",
"com.example.permission4",
"com.example.permission5"],
1,
)
```
## Context.getApplicationInfo(callback: AsyncCallback<ApplicationInfo>)
- 接口说明
获取有关当前应用程序的信息(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------- | ---- | ---------------------- |
| callback | 只读 | AsyncCallback\<ApplicationInfo> | 是 | 返回当前应用程序的信息 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo()
```
## Context.getApplicationInfo
- 接口说明
获取有关当前应用程序的信息(Promise形式)
- 参数描述
- 返回值
| 类型 | 说明 |
| ------------------------ | ------------------ |
| Promise<ApplicationInfo> | 当前应用程序的信息 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo().then((void) => {
console.info("==========================>getApplicationInfoCallback=======================>");
});
```
## Context.getBundleName(callback: AsyncCallback<string>)
- 接口说明
获取当前ability的捆绑包名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | --------------------------- |
| callback | 只读 | AsyncCallback\<string> | 是 | 返回当前ability的捆绑包名称 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName()
```
## Context.getBundleName
- 接口说明
获取当前ability的捆绑包名称(Promise形式)
- 参数描述
- 返回值
| 类型 | 说明 |
| --------------- | ----------------------- |
| Promise<string> | 当前ability的捆绑包名称 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName().then((void) => {
console.info("==========================>getBundleNameCallback=======================>");
});
```
## Context.getProcessInfo(callback: AsyncCallback<ProcessInfo>)
- 接口说明
获取有关当前进程的信息,包括进程ID和名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | ------------------ |
| callback | 只读 | AsyncCallback\<ProcessInfo> | 是 | 返回当前进程的信息 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo()
```
## Context.getProcessInfo
- 接口说明
获取有关当前进程的信息,包括进程id和名称(Promise形式)
- 参数描述
- 返回值
| 类型 | 说明 |
| -------------------- | -------------- |
| Promise<ProcessInfo> | 当前进程的信息 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo().then((void) => {
console.info("==========================>getProcessInfoCallback=======================>");
});
```
## Context.getElementName(callback: AsyncCallback<ElementName>)
- 接口说明
获取当前ability的ohos.bundle.ElementName对象。此方法仅适用于页面功能(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | -------------------------------------------- |
| callback | 只读 | AsyncCallback\<ElementName> | 是 | 返回当前ability的ohos.bundle.ElementName对象 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName()
```
## Context.getElementName
- 接口说明
获取当前能力的ohos.bundle.ElementName对象。此方法仅适用于页面功能(Promise形式)
- 参数描述
- 返回值
| 类型 | 说明 |
| -------------------- | ---------------------------------------- |
| Promise<ElementName> | 当前ability的ohos.bundle.ElementName对象 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName().then((void) => {
console.info("==========================>getElementNameCallback=======================>");
});
```
## **Context.getProcessName(callback: AsyncCallback<string>)**
- 接口说明
获取当前进程的名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------ |
| callback | 只读 | AsyncCallback\<string> | 是 | 返回当前进程的名称 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName()
```
## Context.getProcessName
- 接口说明
获取当前进程的名称(Promise形式)
- 参数描述
- 返回值
| 类型 | 说明 |
| --------------- | -------------- |
| Promise<string> | 当前进程的名称 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName().then((void) => {
console.info("==========================>getProcessNameCallback=======================>");
});
```
## Context.getCallingBundle(callback: AsyncCallback<string>)
- 接口说明
获取调用当前ability捆绑包名称(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------- |
| callback | 只读 | AsyncCallback\<string> | 是 | 返回当前ability捆绑包名称 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle()
```
## Context.getCallingBundle
- 接口说明
获取调用当前ability捆绑包名称(Promise形式)
- 参数描述
- 返回值
| 类型 | 说明 |
| --------------- | ------------------------- |
| Promise<string> | 调用当前ability捆绑包名称 |
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle().then((void) => {
console.info("==========================>getCallingBundleCallback=======================>");
});
```
### DataUriUtils模块(JS端SDK接口)
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 导入模块
```js
import notify from '@ohos.ability.dataUriUtils';
```
#### DataUriUtils.getId(uri: string)
- 接口说明
获取附加到给定uri的路径组件末尾的ID
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------- |
| uri | 只读 | string | 是 | 指示要从中获取ID的uri对象 |
- 返回值
附加到路径组件末尾的ID
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
dataUriUtils.getIdSync("com.example.dataUriUtils/1221")
```
#### DataUriUtils.attachId(uri: string, id: number)
- 接口说明
将给定ID附加到给定uri的路径组件的末尾
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------- |
| uri | 只读 | string | 是 | 指示要从中获取ID的uri对象 |
| id | 只读 | number | 是 | 指示要附加的ID |
- 返回值
附加给定ID的uri对象
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
var idint = 1122;
dataUriUtils.attachId(
"com.example.dataUriUtils"
idint,
)
```
#### DataUriUtils.deleteId(uri: string)
- 接口说明
从给定uri的路径组件的末尾删除ID
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------- |
| uri | 只读 | string | 是 | 指示要从中删除ID的uri对象 |
- 返回值
ID已删除的uri对象
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
dataUriUtils.deleteId("com.example.dataUriUtils/1221")
```
#### DataUriUtils.updateId(uri: string, id: number)
- 接口说明
更新指定uri中的ID
- updateId参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------- |
| uri | 只读 | string | 是 | 指示要更新的uri对象 |
| id | 只读 | number | 是 | 指示新ID |
- 返回值
更新的uri对象
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
var idint = 1122;
dataUriUtils.updateId(
"com.example.dataUriUtils"
idint,
)
```
# DataUriUtils模块
## 导入模块
```js
import dataUriUtils from '@ohos.ability.dataUriUtils';
```
## DataUriUtils.getId
- 接口说明
获取附加到给定uri的路径组件末尾的ID
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------- |
| uri | 只读 | string | 是 | 指示要从中获取ID的uri对象 |
- 返回值
附加到路径组件末尾的ID
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
dataUriUtils.getIdSync("com.example.dataUriUtils/1221")
```
## DataUriUtils.attachId
- 接口说明
将给定ID附加到给定uri的路径组件的末尾
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------- |
| uri | 只读 | string | 是 | 指示要从中获取ID的uri对象 |
| id | 只读 | number | 是 | 指示要附加的ID |
- 返回值
附加给定ID的uri对象
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
var idint = 1122;
dataUriUtils.attachId(
"com.example.dataUriUtils"
idint,
)
```
## DataUriUtils.deleteId
- 接口说明
从给定uri的路径组件的末尾删除ID
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------- |
| uri | 只读 | string | 是 | 指示要从中删除ID的uri对象 |
- 返回值
ID已删除的uri对象
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
dataUriUtils.deleteId("com.example.dataUriUtils/1221")
```
## DataUriUtils.updateId
- 接口说明
更新指定uri中的ID
- updateId参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------- |
| uri | 只读 | string | 是 | 指示要更新的uri对象 |
| id | 只读 | number | 是 | 指示新ID |
- 返回值
更新的uri对象
- 示例
```js
import dataUriUtils from '@ohos.ability.datauriutils'
var idint = 1122;
dataUriUtils.updateId(
"com.example.dataUriUtils"
idint,
)
```
# CommonEvent模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- |
| CommonEvent.publish(event: string, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback<CommonEventSubscriber>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback<CommonEventData>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
#### 权限列表
| 系统公共事件宏 | 系统公共事件名称 | 订阅者所需权限 |
| ------------------------------------------------------------ | ----------------------------------------------------------- | ------------------------------------------------------------ |
| COMMON_EVENT_BOOT_COMPLETED | usual.event.BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_LOCKED_BOOT_COMPLETED | usual.event.LOCKED_BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_SHUTDOWN | usual.event.SHUTDOWN | 无 |
| COMMON_EVENT_BATTERY_CHANGED | usual.event.BATTERY_CHANGED | 无 |
| COMMON_EVENT_BATTERY_LOW | usual.event.BATTERY_LOW | 无 |
| COMMON_EVENT_BATTERY_OKAY | usual.event.BATTERY_OKAY | 无 |
| COMMON_EVENT_POWER_CONNECTED | usual.event.POWER_CONNECTED | 无 |
| COMMON_EVENT_POWER_DISCONNECTED | usual.event.POWER_DISCONNECTED | 无 |
| COMMON_EVENT_SCREEN_OFF | usual.event.SCREEN_OFF | 无 |
| COMMON_EVENT_SCREEN_ON | usual.event.SCREEN_ON | 无 |
| COMMON_EVENT_USER_PRESENT | usual.event.USER_PRESENT | 无 |
| COMMON_EVENT_TIME_TICK | usual.event.TIME_TICK | 无 |
| COMMON_EVENT_TIME_CHANGED | usual.event.TIME_CHANGED | 无 |
| COMMON_EVENT_DATE_CHANGED | usual.event.DATE_CHANGED | 无 |
| COMMON_EVENT_TIMEZONE_CHANGED | usual.event.TIMEZONE_CHANGED | 无 |
| COMMON_EVENT_CLOSE_SYSTEM_DIALOGS | usual.event.CLOSE_SYSTEM_DIALOGS | 无 |
| COMMON_EVENT_PACKAGE_ADDED | usual.event.PACKAGE_ADDED | 无 |
| COMMON_EVENT_PACKAGE_REPLACED | usual.event.PACKAGE_REPLACED | 无 |
| COMMON_EVENT_MY_PACKAGE_REPLACED | usual.event.MY_PACKAGE_REPLACED | 无 |
| COMMON_EVENT_PACKAGE_REMOVED | usual.event.PACKAGE_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FULLY_REMOVED | usual.event.PACKAGE_FULLY_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_CHANGED | usual.event.PACKAGE_CHANGED | 无 |
| COMMON_EVENT_PACKAGE_RESTARTED | usual.event.PACKAGE_RESTARTED | 无 |
| COMMON_EVENT_PACKAGE_DATA_CLEARED | usual.event.PACKAGE_DATA_CLEARED | 无 |
| COMMON_EVENT_PACKAGES_SUSPENDED | usual.event.PACKAGES_SUSPENDED | 无 |
| COMMON_EVENT_PACKAGES_UNSUSPENDED | usual.event.PACKAGES_UNSUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_SUSPENDED | usual.event.MY_PACKAGE_SUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_UNSUSPENDED | usual.event.MY_PACKAGE_UNSUSPENDED | 无 |
| COMMON_EVENT_UID_REMOVED | usual.event.UID_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FIRST_LAUNCH | usual.event.PACKAGE_FIRST_LAUNCH | 无 |
| COMMON_EVENT_PACKAGE_NEEDS_VERIFICATION | usual.event.PACKAGE_NEEDS_VERIFICATION | 无 |
| COMMON_EVENT_PACKAGE_VERIFIED | usual.event.PACKAGE_VERIFIED | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_AVAILABLE | usual.event.EXTERNAL_APPLICATIONS_AVAILABLE | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_UNAVAILABLE | usual.event.EXTERNAL_APPLICATIONS_UNAVAILABLE | 无 |
| COMMON_EVENT_CONFIGURATION_CHANGED | usual.event.CONFIGURATION_CHANGED | 无 |
| COMMON_EVENT_LOCALE_CHANGED | usual.event.LOCALE_CHANGED | 无 |
| COMMON_EVENT_MANAGE_PACKAGE_STORAGE | usual.event.MANAGE_PACKAGE_STORAGE | 无 |
| COMMON_EVENT_DRIVE_MODE | common.event.DRIVE_MODE | 无 |
| COMMON_EVENT_HOME_MODE | common.event.HOME_MODE | 无 |
| COMMON_EVENT_OFFICE_MODE | common.event.OFFICE_MODE | 无 |
| COMMON_EVENT_USER_STARTED | usual.event.USER_STARTED | 无 |
| COMMON_EVENT_USER_BACKGROUND | usual.event.USER_BACKGROUND | 无 |
| COMMON_EVENT_USER_FOREGROUND | usual.event.USER_FOREGROUND | 无 |
| COMMON_EVENT_USER_SWITCHED | usual.event.USER_SWITCHED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_STARTING | usual.event.USER_STARTING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_UNLOCKED | usual.event.USER_UNLOCKED | 无 |
| COMMON_EVENT_USER_STOPPING | usual.event.USER_STOPPING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_STOPPED | usual.event.USER_STOPPED | 无 |
| COMMON_EVENT_HWID_LOGIN | common.event.HWID_LOGIN | 无 |
| COMMON_EVENT_HWID_LOGOUT | common.event.HWID_LOGOUT | 无 |
| COMMON_EVENT_HWID_TOKEN_INVALID | common.event.HWID_TOKEN_INVALID | 无 |
| COMMON_EVENT_HWID_LOGOFF | common.event.HWID_LOGOFF | 无 |
| COMMON_EVENT_WIFI_POWER_STATE | usual.event.wifi.POWER_STATE | 无 |
| COMMON_EVENT_WIFI_SCAN_FINISHED | usual.event.wifi.SCAN_FINISHED | ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_RSSI_VALUE | usual.event.wifi.RSSI_VALUE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_CONN_STATE | usual.event.wifi.CONN_STATE | 无 |
| COMMON_EVENT_WIFI_HOTSPOT_STATE | usual.event.wifi.HOTSPOT_STATE | 无 |
| COMMON_EVENT_WIFI_AP_STA_JOIN | usual.event.wifi.WIFI_HS_STA_JOIN | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_AP_STA_LEAVE | usual.event.wifi.WIFI_HS_STA_LEAVE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_MPLINK_STATE_CHANGE | usual.event.wifi.mplink.STATE_CHANGE | ohos.permission.MPLINK_CHANGE_STATE |
| COMMON_EVENT_WIFI_P2P_CONN_STATE | usual.event.wifi.p2p.CONN_STATE_CHANGE | ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_P2P_STATE_CHANGED | usual.event.wifi.p2p.STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_STATE_CHANGED | usual.event.wifi.p2p.DEVICES_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_DISCOVERY_STATE_CHANGED | usual.event.wifi.p2p.PEER_DISCOVERY_STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_CURRENT_DEVICE_STATE_CHANGED | usual.event.wifi.p2p.CURRENT_DEVICE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_GROUP_STATE_CHANGED | usual.event.wifi.p2p.GROUP_STATE_CHANGED | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.handsfree.ag.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.a2dpsource.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsource.PLAYING_STATE_UPDATE" | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_AVRCP_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.AVRCP_CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CODEC_VALUE_UPDATE | usual.event.bluetooth.a2dpsource.CODEC_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_DISCOVERED | usual.event.bluetooth.remotedevice.DISCOVERED | ohos.permission.USE_BLUETOOTH and ohos.permission.LOCATION |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CLASS_VALUE_UPDATE | usual.event.bluetooth.remotedevice.CLASS_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_CONNECTED | usual.event.bluetooth.remotedevice.ACL_CONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_DISCONNECTED | usual.event.bluetooth.remotedevice.ACL_DISCONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_NAME_UPDATE | usual.event.bluetooth.remotedevice.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIR_STATE | usual.event.bluetooth.remotedevice.PAIR_STATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_BATTERY_VALUE_UPDATE | usual.event.bluetooth.remotedevice.BATTERY_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_SDP_RESULT | usual.event.bluetooth.remotedevice.SDP_RESULT | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_UUID_VALUE | usual.event.bluetooth.remotedevice.UUID_VALUE | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_REQ | usual.event.bluetooth.remotedevice.PAIRING_REQ | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_CANCEL | usual.event.bluetooth.remotedevice.PAIRING_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REQ | usual.event.bluetooth.remotedevice.CONNECT_REQ | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REPLY | usual.event.bluetooth.remotedevice.CONNECT_REPLY | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_CANCEL | usual.event.bluetooth.remotedevice.CONNECT_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.CONNECT_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AUDIO_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_COMMON_EVENT | usual.event.bluetooth.handsfreeunit.AG_COMMON_EVENT | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_CALL_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AG_CALL_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_STATE_UPDATE | usual.event.bluetooth.host.STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISCOVERABLE | usual.event.bluetooth.host.REQ_DISCOVERABLE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_ENABLE | usual.event.bluetooth.host.REQ_ENABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISABLE | usual.event.bluetooth.host.REQ_DISABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_SCAN_MODE_UPDATE | usual.event.bluetooth.host.SCAN_MODE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_STARTED | usual.event.bluetooth.host.DISCOVERY_STARTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_FINISHED | usual.event.bluetooth.host.DISCOVERY_FINISHED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_NAME_UPDATE | usual.event.bluetooth.host.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsink.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsink.PLAYING_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_AUDIO_STATE_UPDATE | usual.event.bluetooth.a2dpsink.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_NFC_ACTION_ADAPTER_STATE_CHANGED | usual.event.nfc.action.ADAPTER_STATE_CHANGED | 无 |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_ON_DETECTED | usual.event.nfc.action.RF_FIELD_ON_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_OFF_DETECTED | usual.event.nfc.action.RF_FIELD_OFF_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_DISCHARGING | usual.event.DISCHARGING | 无 |
| COMMON_EVENT_CHARGING | usual.event.CHARGING | 无 |
| COMMON_EVENT_DEVICE_IDLE_MODE_CHANGED | usual.event.DEVICE_IDLE_MODE_CHANGED | 无 |
| COMMON_EVENT_POWER_SAVE_MODE_CHANGED | usual.event.POWER_SAVE_MODE_CHANGED | 无 |
| COMMON_EVENT_USER_ADDED | usual.event.USER_ADDED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_REMOVED | usual.event.USER_REMOVED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_ABILITY_ADDED | common.event.ABILITY_ADDED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_REMOVED | common.event.ABILITY_REMOVED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_UPDATED | common.event.ABILITY_UPDATED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_LOCATION_MODE_STATE_CHANGED | usual.event.location.MODE_STATE_CHANGED | 无 |
| COMMON_EVENT_IVI_SLEEP | common.event.IVI_SLEEP | 无 |
| COMMON_EVENT_IVI_PAUSE | common.event.IVI_PAUSE | 无 |
| COMMON_EVENT_IVI_STANDBY | common.event.IVI_STANDBY | 无 |
| COMMON_EVENT_IVI_LASTMODE_SAVE | common.event.IVI_LASTMODE_SAVE | 无 |
| COMMON_EVENT_IVI_VOLTAGE_ABNORMAL | common.event.IVI_VOLTAGE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_HIGH_TEMPERATURE | common.event.IVI_HIGH_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_EXTREME_TEMPERATURE | common.event.IVI_EXTREME_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_ABNORMAL | common.event.IVI_TEMPERATURE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_VOLTAGE_RECOVERY | common.event.IVI_VOLTAGE_RECOVERY | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_RECOVERY | common.event.IVI_TEMPERATURE_RECOVERY | 无 |
| COMMON_EVENT_IVI_ACTIVE | common.event.IVI_ACTIVE | 无 |
| COMMON_EVENT_USB_DEVICE_ATTACHED | usual.event.hardware.usb.action.USB_DEVICE_ATTACHED | 无 |
| COMMON_EVENT_USB_DEVICE_DETACHED | usual.event.hardware.usb.action.USB_DEVICE_DETACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_ATTACHED | usual.event.hardware.usb.action.USB_ACCESSORY_ATTACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_DETACHED | usual.event.hardware.usb.action.USB_ACCESSORY_DETACHED | 无 |
| COMMON_EVENT_DISK_REMOVED | usual.event.data.DISK_REMOVED | ohos.permission.WRITE_USER_STORAGE or ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTED | usual.event.data.DISK_UNMOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_MOUNTED | usual.event.data.DISK_MOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_BAD_REMOVAL | usual.event.data.DISK_BAD_REMOVAL | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTABLE | usual.event.data.DISK_UNMOUNTABLE | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_EJECT | usual.event.data.DISK_EJECT | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_VISIBLE_ACCOUNTS_UPDATED | usual.event.data.VISIBLE_ACCOUNTS_UPDATED | ohos.permission.GET_APP_ACCOUNTS |
| COMMON_EVENT_ACCOUNT_DELETED | usual.event.data.ACCOUNT_DELETED | ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS |
| COMMON_EVENT_FOUNDATION_READY | common.event.FOUNDATION_READY | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_AIRPLANE_MODE_CHANGED | usual.event.AIRPLANE_MODE | 无 |
#### 导入模块
```js
import CommonEvent from '@ohos.commonevent';
```
#### CommonEvent.publish(event: string, callback: AsyncCallback<void>)
- 接口说明
发布公共事件(callback形式)
* publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | -------------------- |
| event | 只读 | string | 是 | 表示要发送的公共事件 |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
* 返回值
void
* 示例
```js
//发布公共事件回调
function PublishCallBack(err) {
console.info("==========================>PublishCallBack=======================>");
console.info("==========================>err:=======================>", err.code);
}
//发布公共事件
CommonEvent.publish("publish_event", PublishCallBack);
```
#### CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback<void>)
- 接口说明
发布公共事件指定发布信息(callback形式)
- publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ---------------------- |
| event | 只读 | string | 是 | 表示要发布的公共事件 |
| options | 只读 | CommonEventPublishData | 是 | 表示发布公共事件的属性 |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
- CommonEventPublishData类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------------------- | -------- | -------------------- | ---- | ---------------------------- |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | int | 否 | 表示公共事件的结果代码 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据 |
| subscriberPermissions | 只读 | Array<string> | 否 | 表示订阅者的权限 |
| isOrdered | 只读 | bool | 否 | 表示是否是有序事件 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
- 返回值
void
- 示例
```js
//公共事件相关信息
var options = {
code: 0; //公共事件的初始代码
data: "initial data";//公共事件的初始数据
isOrdered: true; //有序公共事件
}
//发布公共事件回调
function PublishCallBack(err) {
console.info("==========================>PublishCallBack=======================>");
}
//发布公共事件
CommonEvent.publish("publish_event", options, PublishCallBack);
```
#### CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback<CommonEventSubscriber>)
- 接口说明
创建订阅者(callback形式)
- createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ------------------------------------ | ---- | ------------------------ |
| subscribeInfo | 只读 | CommonEventSubscribeInfo | 是 | 表示订阅信息 |
| callback | 只读 | AsyncCallback<CommonEventSubscriber> | 是 | 表示创建订阅者的回调方法 |
- CommonEventSubscriber 类说明
| 名称 | 参数 | 返回值 | 描述 |
| --------------------- | --------------------------------------------------------- | --------------------------------- | ------------------------------------------------------------ |
| getCode | callback: AsyncCallback<number> | void | 获取公共事件的结果代码(callback形式) |
| getCode | void | Promise<number> | 获取公共事件的结果代码(Promise形式) |
| setCode | code: number, callback: AsyncCallback<void> | void | 设置公共事件的结果代码(callback形式) |
| setCode | code: number | Promise<void> | 设置公共事件的结果代码(Promise形式) |
| getData | callback: AsyncCallback<string> | void | 获取公共事件的结果数据(callback形式) |
| getData | void | Promise<string> | 获取公共事件的结果数据(Promise形式) |
| setData | data: string, callback: AsyncCallback<void> | void | 设置公共事件的结果数据(callback形式) |
| setData | data: string | Promise<void> | 设置公共事件的结果数据(Promise形式) |
| setCodeAndData | code: number, data: string, callback: AsyncCallback<void> | void | 设置公共事件的结果代码和结果数据(callback形式) |
| setCodeAndData | code: number, data: string | Promise<void> | 设置公共事件的结果代码和结果数据(Promise形式) |
| isOrderedCommonEvent | callback: AsyncCallback<boolean> | void | 查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(callback形式) |
| isOrderedCommonEvent | void | Promise<bool> | 查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(Promise形式) |
| abortCommonEvent | callback: AsyncCallback<void> | void | 取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式) |
| abortCommonEvent | void | Promise<void> | 取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式) |
| clearAbortCommonEvent | callback: AsyncCallback<void> | void | 清除当前有序公共事件abort状态(callback形式) |
| clearAbortCommonEvent | void | Promise<void> | 清除当前有序公共事件abort状态(Promise形式) |
| getAbortCommonEvent | callback: AsyncCallback<boolean> | void | 获取当前有序公共事件是否取消的状态(callback形式) |
| getAbortCommonEvent | void | Promise<boolean> | 获取当前有序公共事件是否取消的状态Promise形式) |
| getSubscribeInfo | callback: AsyncCallback<CommonEventSubscribeInfo> | void | 获取订阅者的订阅信息(callback形式) |
| getSubscribeInfo | void | Promise<CommonEventSubscribeInfo> | 获取订阅者的订阅信息(Promise形式) |
- CommonEventSubscribeInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------------- | ---- | ------------------------------------------------------------ |
| events | 只读 | Array<string> | 是 | 表示要订阅的公共事件 |
| publisherPermission | 只读 | string | 否 | 表示发布者的权限 |
| publisherDeviceId | 只读 | int | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID |
| userId | 只读 | int | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 |
| priority | 只读 | int | 否 | 表示订阅者的优先级,范围为-100~1000。 |
- 返回值
void
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
```
#### CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo)
- 接口说明
创建订阅者(Promise形式)
- createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ------------------------ | ---- | ------------ |
| subscribeInfo | 只读 | CommonEventSubscribeInfo | 是 | 表示订阅信息 |
- CommonEventSubscribeInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------------- | ---- | ------------------------------------------------------------ |
| events | 只读 | Array<string> | 是 | 表示要发送的公共事件 |
| publisherPermission | 只读 | string | 否 | 表示发布者的权限 |
| publisherDeviceId | 只读 | int | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID |
| userId | 只读 | int | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 |
| priority | 只读 | int | 否 | 表示订阅者的优先级。值的范围是-100到1000 |
- 返回值
Promise<CommonEventSubscriber>
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo).then((data) => {
console.info("==========================>createSubscriberPromise=======================>");
subscriber = data;
});
```
#### CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback<CommonEventData>)
- 接口说明
订阅公共事件(callback形式)
- subscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------------------------ | ---- | ------------------------------ |
| subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback<CommonEventData> | 是 | 表示接收公共事件数据的回调函数 |
- CommonEventData类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | -------------------- | ---- | ------------------------------------------------------- |
| event | 只读 | string | 是 | 表示当前接收的公共事件名称 |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | int | 否 | 表示公共事件的结果代码,用于传递int类型的数据 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据,用于传递string 类型的数据 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
- 返回值
void
- 示例
* 无序事件:
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//订阅公共事件回调
function SubscribeCallBack(err, data) {
console.info("==========================>SubscribeCallBack=======================>");
}
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
//订阅公共事件
CommonEvent.subscribe(subscriber, SubscribeCallBack);
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
```
* 有序事件
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//设置有序公共事件的结果代码回调
function SetCodeCallBack(err) {
console.info("==========================>SetCodeCallBack=======================>");
}
//设置有序公共事件的结果数据回调
function SetDataCallBack(err) {
console.info("==========================>SetDataCallBack=======================>");
}
//完成本次有序公共事件处理回调
function FinishCommonEventCallBack(err) {
console.info("==========================>FinishCommonEventCallBack=======================>");
}
//订阅公共事件回调
function SubscribeCallBack(err, data) {
console.info("==========================>SubscribeCallBack=======================>");
//设置有序公共事件的结果代码
subscriber.setCode(0, SetCodeCallBack);
//设置有序公共事件的结果数据
subscriber.setData("publish_data_changed", SetDataCallBack);
//完成本次有序公共事件处理
subscriber.finishCommonEvent(FinishCommonEventCallBack)
}
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
//订阅公共事件
CommonEvent.subscribe(subscriber, SubscribeCallBack);
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
```
#### CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback<void>)
- 接口说明
取消订阅公共事件(callback形式)
- unsubscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------- | ---- | ---------------------- |
| subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback<void> | 是 | 表示取消订阅的回调方法 |
- 返回值
void
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//订阅公共事件回调
function SubscribeCallBack(err, data) {
console.info("==========================>SubscribeCallBack=======================>");
}
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
//订阅公共事件
CommonEvent.subscribe(subscriber, SubscribeCallBack);
}
//取消订阅公共事件回调
function UnsubscribeCallBack(err) {
console.info("==========================>UnsubscribeCallBack=======================>");
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
//取消订阅公共事件
CommonEvent.unsubscribe(subscriber, UnsubscribeCallBack);
```
# 公共事件模块
**说明:**
本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- |
| CommonEvent.publish(event: string, callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback\<CommonEventSubscriber>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback\<CommonEventData>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
## 权限列表
| 系统公共事件宏 | 系统公共事件名称 | 订阅者所需权限 |
| ------------------------------------------------------------ | ----------------------------------------------------------- | ------------------------------------------------------------ |
| COMMON_EVENT_BOOT_COMPLETED | usual.event.BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_LOCKED_BOOT_COMPLETED | usual.event.LOCKED_BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_SHUTDOWN | usual.event.SHUTDOWN | 无 |
| COMMON_EVENT_BATTERY_CHANGED | usual.event.BATTERY_CHANGED | 无 |
| COMMON_EVENT_BATTERY_LOW | usual.event.BATTERY_LOW | 无 |
| COMMON_EVENT_BATTERY_OKAY | usual.event.BATTERY_OKAY | 无 |
| COMMON_EVENT_POWER_CONNECTED | usual.event.POWER_CONNECTED | 无 |
| COMMON_EVENT_POWER_DISCONNECTED | usual.event.POWER_DISCONNECTED | 无 |
| COMMON_EVENT_SCREEN_OFF | usual.event.SCREEN_OFF | 无 |
| COMMON_EVENT_SCREEN_ON | usual.event.SCREEN_ON | 无 |
| COMMON_EVENT_USER_PRESENT | usual.event.USER_PRESENT | 无 |
| COMMON_EVENT_TIME_TICK | usual.event.TIME_TICK | 无 |
| COMMON_EVENT_TIME_CHANGED | usual.event.TIME_CHANGED | 无 |
| COMMON_EVENT_DATE_CHANGED | usual.event.DATE_CHANGED | 无 |
| COMMON_EVENT_TIMEZONE_CHANGED | usual.event.TIMEZONE_CHANGED | 无 |
| COMMON_EVENT_CLOSE_SYSTEM_DIALOGS | usual.event.CLOSE_SYSTEM_DIALOGS | 无 |
| COMMON_EVENT_PACKAGE_ADDED | usual.event.PACKAGE_ADDED | 无 |
| COMMON_EVENT_PACKAGE_REPLACED | usual.event.PACKAGE_REPLACED | 无 |
| COMMON_EVENT_MY_PACKAGE_REPLACED | usual.event.MY_PACKAGE_REPLACED | 无 |
| COMMON_EVENT_PACKAGE_REMOVED | usual.event.PACKAGE_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FULLY_REMOVED | usual.event.PACKAGE_FULLY_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_CHANGED | usual.event.PACKAGE_CHANGED | 无 |
| COMMON_EVENT_PACKAGE_RESTARTED | usual.event.PACKAGE_RESTARTED | 无 |
| COMMON_EVENT_PACKAGE_DATA_CLEARED | usual.event.PACKAGE_DATA_CLEARED | 无 |
| COMMON_EVENT_PACKAGES_SUSPENDED | usual.event.PACKAGES_SUSPENDED | 无 |
| COMMON_EVENT_PACKAGES_UNSUSPENDED | usual.event.PACKAGES_UNSUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_SUSPENDED | usual.event.MY_PACKAGE_SUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_UNSUSPENDED | usual.event.MY_PACKAGE_UNSUSPENDED | 无 |
| COMMON_EVENT_UID_REMOVED | usual.event.UID_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FIRST_LAUNCH | usual.event.PACKAGE_FIRST_LAUNCH | 无 |
| COMMON_EVENT_PACKAGE_NEEDS_VERIFICATION | usual.event.PACKAGE_NEEDS_VERIFICATION | 无 |
| COMMON_EVENT_PACKAGE_VERIFIED | usual.event.PACKAGE_VERIFIED | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_AVAILABLE | usual.event.EXTERNAL_APPLICATIONS_AVAILABLE | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_UNAVAILABLE | usual.event.EXTERNAL_APPLICATIONS_UNAVAILABLE | 无 |
| COMMON_EVENT_CONFIGURATION_CHANGED | usual.event.CONFIGURATION_CHANGED | 无 |
| COMMON_EVENT_LOCALE_CHANGED | usual.event.LOCALE_CHANGED | 无 |
| COMMON_EVENT_MANAGE_PACKAGE_STORAGE | usual.event.MANAGE_PACKAGE_STORAGE | 无 |
| COMMON_EVENT_DRIVE_MODE | common.event.DRIVE_MODE | 无 |
| COMMON_EVENT_HOME_MODE | common.event.HOME_MODE | 无 |
| COMMON_EVENT_OFFICE_MODE | common.event.OFFICE_MODE | 无 |
| COMMON_EVENT_USER_STARTED | usual.event.USER_STARTED | 无 |
| COMMON_EVENT_USER_BACKGROUND | usual.event.USER_BACKGROUND | 无 |
| COMMON_EVENT_USER_FOREGROUND | usual.event.USER_FOREGROUND | 无 |
| COMMON_EVENT_USER_SWITCHED | usual.event.USER_SWITCHED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_STARTING | usual.event.USER_STARTING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_UNLOCKED | usual.event.USER_UNLOCKED | 无 |
| COMMON_EVENT_USER_STOPPING | usual.event.USER_STOPPING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_STOPPED | usual.event.USER_STOPPED | 无 |
| COMMON_EVENT_HWID_LOGIN | common.event.HWID_LOGIN | 无 |
| COMMON_EVENT_HWID_LOGOUT | common.event.HWID_LOGOUT | 无 |
| COMMON_EVENT_HWID_TOKEN_INVALID | common.event.HWID_TOKEN_INVALID | 无 |
| COMMON_EVENT_HWID_LOGOFF | common.event.HWID_LOGOFF | 无 |
| COMMON_EVENT_WIFI_POWER_STATE | usual.event.wifi.POWER_STATE | 无 |
| COMMON_EVENT_WIFI_SCAN_FINISHED | usual.event.wifi.SCAN_FINISHED | ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_RSSI_VALUE | usual.event.wifi.RSSI_VALUE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_CONN_STATE | usual.event.wifi.CONN_STATE | 无 |
| COMMON_EVENT_WIFI_HOTSPOT_STATE | usual.event.wifi.HOTSPOT_STATE | 无 |
| COMMON_EVENT_WIFI_AP_STA_JOIN | usual.event.wifi.WIFI_HS_STA_JOIN | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_AP_STA_LEAVE | usual.event.wifi.WIFI_HS_STA_LEAVE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_MPLINK_STATE_CHANGE | usual.event.wifi.mplink.STATE_CHANGE | ohos.permission.MPLINK_CHANGE_STATE |
| COMMON_EVENT_WIFI_P2P_CONN_STATE | usual.event.wifi.p2p.CONN_STATE_CHANGE | ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_P2P_STATE_CHANGED | usual.event.wifi.p2p.STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_STATE_CHANGED | usual.event.wifi.p2p.DEVICES_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_DISCOVERY_STATE_CHANGED | usual.event.wifi.p2p.PEER_DISCOVERY_STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_CURRENT_DEVICE_STATE_CHANGED | usual.event.wifi.p2p.CURRENT_DEVICE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_GROUP_STATE_CHANGED | usual.event.wifi.p2p.GROUP_STATE_CHANGED | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.handsfree.ag.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.a2dpsource.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsource.PLAYING_STATE_UPDATE" | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_AVRCP_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.AVRCP_CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CODEC_VALUE_UPDATE | usual.event.bluetooth.a2dpsource.CODEC_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_DISCOVERED | usual.event.bluetooth.remotedevice.DISCOVERED | ohos.permission.USE_BLUETOOTH and ohos.permission.LOCATION |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CLASS_VALUE_UPDATE | usual.event.bluetooth.remotedevice.CLASS_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_CONNECTED | usual.event.bluetooth.remotedevice.ACL_CONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_DISCONNECTED | usual.event.bluetooth.remotedevice.ACL_DISCONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_NAME_UPDATE | usual.event.bluetooth.remotedevice.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIR_STATE | usual.event.bluetooth.remotedevice.PAIR_STATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_BATTERY_VALUE_UPDATE | usual.event.bluetooth.remotedevice.BATTERY_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_SDP_RESULT | usual.event.bluetooth.remotedevice.SDP_RESULT | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_UUID_VALUE | usual.event.bluetooth.remotedevice.UUID_VALUE | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_REQ | usual.event.bluetooth.remotedevice.PAIRING_REQ | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_CANCEL | usual.event.bluetooth.remotedevice.PAIRING_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REQ | usual.event.bluetooth.remotedevice.CONNECT_REQ | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REPLY | usual.event.bluetooth.remotedevice.CONNECT_REPLY | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_CANCEL | usual.event.bluetooth.remotedevice.CONNECT_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.CONNECT_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AUDIO_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_COMMON_EVENT | usual.event.bluetooth.handsfreeunit.AG_COMMON_EVENT | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_CALL_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AG_CALL_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_STATE_UPDATE | usual.event.bluetooth.host.STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISCOVERABLE | usual.event.bluetooth.host.REQ_DISCOVERABLE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_ENABLE | usual.event.bluetooth.host.REQ_ENABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISABLE | usual.event.bluetooth.host.REQ_DISABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_SCAN_MODE_UPDATE | usual.event.bluetooth.host.SCAN_MODE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_STARTED | usual.event.bluetooth.host.DISCOVERY_STARTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_FINISHED | usual.event.bluetooth.host.DISCOVERY_FINISHED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_NAME_UPDATE | usual.event.bluetooth.host.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsink.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsink.PLAYING_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_AUDIO_STATE_UPDATE | usual.event.bluetooth.a2dpsink.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_NFC_ACTION_ADAPTER_STATE_CHANGED | usual.event.nfc.action.ADAPTER_STATE_CHANGED | 无 |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_ON_DETECTED | usual.event.nfc.action.RF_FIELD_ON_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_OFF_DETECTED | usual.event.nfc.action.RF_FIELD_OFF_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_DISCHARGING | usual.event.DISCHARGING | 无 |
| COMMON_EVENT_CHARGING | usual.event.CHARGING | 无 |
| COMMON_EVENT_DEVICE_IDLE_MODE_CHANGED | usual.event.DEVICE_IDLE_MODE_CHANGED | 无 |
| COMMON_EVENT_POWER_SAVE_MODE_CHANGED | usual.event.POWER_SAVE_MODE_CHANGED | 无 |
| COMMON_EVENT_USER_ADDED | usual.event.USER_ADDED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_REMOVED | usual.event.USER_REMOVED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_ABILITY_ADDED | common.event.ABILITY_ADDED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_REMOVED | common.event.ABILITY_REMOVED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_UPDATED | common.event.ABILITY_UPDATED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_LOCATION_MODE_STATE_CHANGED | usual.event.location.MODE_STATE_CHANGED | 无 |
| COMMON_EVENT_IVI_SLEEP | common.event.IVI_SLEEP | 无 |
| COMMON_EVENT_IVI_PAUSE | common.event.IVI_PAUSE | 无 |
| COMMON_EVENT_IVI_STANDBY | common.event.IVI_STANDBY | 无 |
| COMMON_EVENT_IVI_LASTMODE_SAVE | common.event.IVI_LASTMODE_SAVE | 无 |
| COMMON_EVENT_IVI_VOLTAGE_ABNORMAL | common.event.IVI_VOLTAGE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_HIGH_TEMPERATURE | common.event.IVI_HIGH_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_EXTREME_TEMPERATURE | common.event.IVI_EXTREME_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_ABNORMAL | common.event.IVI_TEMPERATURE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_VOLTAGE_RECOVERY | common.event.IVI_VOLTAGE_RECOVERY | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_RECOVERY | common.event.IVI_TEMPERATURE_RECOVERY | 无 |
| COMMON_EVENT_IVI_ACTIVE | common.event.IVI_ACTIVE | 无 |
| COMMON_EVENT_USB_DEVICE_ATTACHED | usual.event.hardware.usb.action.USB_DEVICE_ATTACHED | 无 |
| COMMON_EVENT_USB_DEVICE_DETACHED | usual.event.hardware.usb.action.USB_DEVICE_DETACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_ATTACHED | usual.event.hardware.usb.action.USB_ACCESSORY_ATTACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_DETACHED | usual.event.hardware.usb.action.USB_ACCESSORY_DETACHED | 无 |
| COMMON_EVENT_DISK_REMOVED | usual.event.data.DISK_REMOVED | ohos.permission.WRITE_USER_STORAGE or ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTED | usual.event.data.DISK_UNMOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_MOUNTED | usual.event.data.DISK_MOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_BAD_REMOVAL | usual.event.data.DISK_BAD_REMOVAL | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTABLE | usual.event.data.DISK_UNMOUNTABLE | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_EJECT | usual.event.data.DISK_EJECT | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_VISIBLE_ACCOUNTS_UPDATED | usual.event.data.VISIBLE_ACCOUNTS_UPDATED | ohos.permission.GET_APP_ACCOUNTS |
| COMMON_EVENT_ACCOUNT_DELETED | usual.event.data.ACCOUNT_DELETED | ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS |
| COMMON_EVENT_FOUNDATION_READY | common.event.FOUNDATION_READY | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_AIRPLANE_MODE_CHANGED | usual.event.AIRPLANE_MODE | 无 |
## 导入模块
```js
import CommonEvent from '@ohos.commonevent';
```
## CommonEvent.publish(event: string, callback: AsyncCallback\<void>): void
- 接口说明
发布公共事件(callback形式)
* publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | -------------------- |
| event | 只读 | string | 是 | 表示要发送的公共事件 |
| callback | 只读 | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
* 示例
```js
//发布公共事件回调
function PublishCallBack(err) {
console.info("==========================>PublishCallBack=======================>");
console.info("==========================>err:=======================>", err.code);
}
//发布公共事件
CommonEvent.publish("publish_event", PublishCallBack);
```
## CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback\<void>): void
- 接口说明
发布公共事件指定发布信息(callback形式)
- publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ---------------------- |
| event | 只读 | string | 是 | 表示要发布的公共事件 |
| options | 只读 | [CommonEventPublishData](#publishData) | 是 | 表示发布公共事件的属性 |
| callback | 只读 | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
- 示例
```js
//公共事件相关信息
var options = {
code: 0; //公共事件的初始代码
data: "initial data";//公共事件的初始数据
isOrdered: true; //有序公共事件
}
//发布公共事件回调
function PublishCallBack(err) {
console.info("==========================>PublishCallBack=======================>");
}
//发布公共事件
CommonEvent.publish("publish_event", options, PublishCallBack);
```
## CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback\<CommonEventSubscriber>): void
- 接口说明
创建订阅者(callback形式)
- createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ---------------------------------------------------- | ---- | ------------------------ |
| subscribeInfo | 只读 | [CommonEventSubscribeInfo](#SubscribeInfo) | 是 | 表示订阅信息 |
| callback | 只读 | AsyncCallback\<[CommonEventSubscriber](#Subscriber)> | 是 | 表示创建订阅者的回调方法 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
```
## CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo): Promise\<CommonEventSubscriber>
- 接口说明
创建订阅者(Promise形式)
- createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ------------------------------------------ | ---- | ------------ |
| subscribeInfo | 只读 | [CommonEventSubscribeInfo](#SubscribeInfo) | 是 | 表示订阅信息 |
- 返回值
Promise\<[CommonEventSubscriber](#Subscriber)>
订阅者对象
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo).then((data) => {
console.info("==========================>createSubscriberPromise=======================>");
subscriber = data;
});
```
## CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback\<CommonEventData>): void
- 接口说明
订阅公共事件(callback形式)
- subscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------------------------- | ---- | ------------------------------ |
| subscriber | 只读 | [CommonEventSubscriber](#Subscriber) | 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback\<[CommonEventData](#CommonEventData)> | 是 | 表示接收公共事件数据的回调函数 |
- 示例
无序事件:
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//订阅公共事件回调
function SubscribeCallBack(err, data) {
console.info("==========================>SubscribeCallBack=======================>");
}
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
//订阅公共事件
CommonEvent.subscribe(subscriber, SubscribeCallBack);
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
```
​ 有序事件:
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//设置有序公共事件的结果代码回调
function SetCodeCallBack(err) {
console.info("==========================>SetCodeCallBack=======================>");
}
//设置有序公共事件的结果数据回调
function SetDataCallBack(err) {
console.info("==========================>SetDataCallBack=======================>");
}
//完成本次有序公共事件处理回调
function FinishCommonEventCallBack(err) {
console.info("==========================>FinishCommonEventCallBack=======================>");
}
//订阅公共事件回调
function SubscribeCallBack(err, data) {
console.info("==========================>SubscribeCallBack=======================>");
//设置有序公共事件的结果代码
subscriber.setCode(0, SetCodeCallBack);
//设置有序公共事件的结果数据
subscriber.setData("publish_data_changed", SetDataCallBack);
//完成本次有序公共事件处理
subscriber.finishCommonEvent(FinishCommonEventCallBack)
}
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
//订阅公共事件
CommonEvent.subscribe(subscriber, SubscribeCallBack);
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
```
## CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback\<void>): void
- 接口说明
取消订阅公共事件(callback形式)
- unsubscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------- | ---- | ---------------------- |
| subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback\<void> | 是 | 表示取消订阅的回调方法 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//订阅公共事件回调
function SubscribeCallBack(err, data) {
console.info("==========================>SubscribeCallBack=======================>");
}
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
//订阅公共事件
CommonEvent.subscribe(subscriber, SubscribeCallBack);
}
//取消订阅公共事件回调
function UnsubscribeCallBack(err) {
console.info("==========================>UnsubscribeCallBack=======================>");
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
//取消订阅公共事件
CommonEvent.unsubscribe(subscriber, UnsubscribeCallBack);
```
## <span id = "publishData">CommonEventPublishData</span>
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------------------- | -------- | -------------------- | ---- | ---------------------------- |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | number | 否 | 表示公共事件的结果代码 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据 |
| subscriberPermissions | 只读 | Array\<string> | 否 | 表示订阅者的权限 |
| isOrdered | 只读 | boolean | 否 | 表示是否是有序事件 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
## <span id = "SubscribeInfo">CommonEventSubscribeInfo</span>
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | -------------- | ---- | ------------------------------------------------------------ |
| events | 只读 | Array\<string> | 是 | 表示要发送的公共事件 |
| publisherPermission | 只读 | string | 否 | 表示发布者的权限 |
| publisherDeviceId | 只读 | string | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID |
| userId | 只读 | number | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 |
| priority | 只读 | number | 否 | 表示订阅者的优先级。值的范围是-100到1000 |
## <span id = "CommonEventData">CommonEventData</span>
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | -------------------- | ---- | ------------------------------------------------------ |
| event | 只读 | string | 是 | 表示当前接收的公共事件名称 |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | number | 否 | 表示公共事件的结果代码,用于传递int类型的数据 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据,用于传递string类型的数据 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
## <span id = "Subscriber">CommonEventSubscriber</span>
### getCode(callback形式)
- 方法说明
获取公共事件的结果代码(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------ |
| callback | AsyncCallback\<number> | 是 | 公共事件的结果代码 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function getCodeCallback(err, data) {
console.info("==========================>getCodeCallback=======================>");
console.info("==========================>err:=======================>", err.code);
console.info("==========================>code:=======================>", data);
}
subscriber.getCode(getCodeCallback);
```
### getCode(Promise形式)
- 方法说明
获取公共事件的结果代码(Promise形式)
- 返回值
| 类型 | 说明 |
| ---------------- | ------------------ |
| Promise\<number> | 公共事件的结果代码 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.getCode().then((data) => {
console.info("==========================>getCodePromise=======================>");
console.info("==========================>code:=======================>", data);
});
```
### setCode(callback形式)
- 方法说明
设置公共事件的结果代码(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| code | number | 是 | 公共事件的结果代码 |
| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function setCodeCallback(err) {
console.info("==========================>setCodeCallback=======================>");
console.info("==========================>err:=======================>", err.code);
}
subscriber.setCode(1, setCodeCallback);
```
### setCode(Promise形式)
- 方法说明
设置公共事件的结果代码(Promise形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| ------ | ------ | ---- | ------------------ |
| code | number | 是 | 公共事件的结果代码 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.setCode(1).then(() => {
console.info("==========================>setCodePromise=======================>");
});
```
### getData(callback形式)
- 方法说明
获取公共事件的结果数据(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------ |
| callback | AsyncCallback\<string> | 是 | 公共事件的结果数据 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function getDataCallback(err, data) {
console.info("==========================>getDataCallback=======================>");
console.info("==========================>err:=======================>", err.code);
console.info("==========================>data:=======================>", data);
}
subscriber.getData(getDataCallback);
```
### getData(Promise形式)
- 方法说明
获取公共事件的结果数据(Promise形式)
- 返回值
| 类型 | 说明 |
| ---------------- | ------------------ |
| Promise\<string> | 公共事件的结果数据 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.getData().then((data) => {
console.info("==========================>getDataPromise=======================>");
console.info("==========================>data:=======================>", data);
});
```
### setData(callback形式)
- 方法说明
设置公共事件的结果数据(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| data | string | 是 | 公共事件的结果数据 |
| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function setDataCallback(err) {
console.info("==========================>setDataCallback=======================>");
console.info("==========================>err:=======================>", err.code);
}
subscriber.setData("publish_data_changed", setDataCallback);
```
### setData(Promise形式)
- 方法说明
设置公共事件的结果数据(Promise形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| ------ | ------ | ---- | ------------------ |
| data | string | 是 | 公共事件的结果数据 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.setData("publish_data_changed").then(() => {
console.info("==========================>setDataPromise=======================>");
});
```
### setCodeAndData(callback形式)
- 方法说明
设置公共事件的结果代码和结果数据(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| code | number | 是 | 公共事件的结果代码 |
| data | string | 是 | 公共事件的结果数据 |
| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function setCodeDataCallback(err) {
console.info("==========================>setCodeDataCallback=======================>");
console.info("==========================>err:=======================>", err.code);
}
subscriber.setCodeAndData(1, "publish_data_changed", setCodeDataCallback);
```
### setCodeAndData(Promise形式)
- 方法说明
设置公共事件的结果代码和结果数据(Promise形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| ------ | ------ | ---- | ------------------ |
| code | number | 是 | 公共事件的结果代码 |
| data | string | 是 | 公共事件的结果数据 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.setCodeAndData(1, "publish_data_changed").then(() => {
console.info("==========================>setCodeAndData=======================>");
});
```
### isOrderedCommonEvent(callback形式)
- 方法说明
查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ----------------------- | ---- | -------------------------------- |
| callback | AsyncCallback\<boolean> | 是 | 当前公共事件的是否为有序公共事件 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function isOrderedCallback(err, data) {
console.info("==========================>isOrderedCallback=======================>");
console.info("==========================>err:=======================>", err.code);
console.info("==========================>isOrdered:=======================>", data);
}
subscriber.isOrderedCommonEvent(isOrderedCallback);
```
### isOrderedCommonEvent(Promise形式)
- 方法说明
查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(Promise形式)
- 返回值
| 类型 | 说明 |
| ----------------- | -------------------------------- |
| Promise\<boolean> | 当前公共事件的是否为有序公共事件 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.isOrderedCommonEvent().then((data) => {
console.info("==========================>isOrdered:=======================>", data);
});
```
### abortCommonEvent(callback形式)
- 方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ----------------------- | ---- | ------------------ |
| callback | AsyncCallback\<boolean> | 是 | 取消当前的公共事件 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function abortCallback(err) {
console.info("==========================>abortCallback=======================>");
console.info("==========================>err:=======================>", err.code);
}
subscriber.abortCommonEvent(abortCallback);
```
### abortCommonEvent(Promise形式)
- 方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式)
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.abortCommonEvent().then(() => {
console.info("==========================>abortCommonEvent:=======================>");
});
```
### clearAbortCommonEvent(callback形式)
- 方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function clearAbortCallback(err) {
console.info("==========================>clearAbortCallback=======================>");
console.info("==========================>err:=======================>", err.code);
}
subscriber.clearAbortCommonEvent(clearAbortCallback);
```
### clearAbortCommonEvent(Promise形式)
- 方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式)
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.clearAbortCommonEvent().then(() => {
console.info("==========================>clearAbortCommonEvent:=======================>");
});
```
### getAbortCommonEvent(callback形式)
- 方法说明
获取当前有序公共事件是否取消的状态(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ----------------------- | ---- | ---------------------------------- |
| callback | AsyncCallback\<boolean> | 是 | 表示当前有序公共事件是否取消的状态 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function getAbortCallback(err, data) {
console.info("==========================>getAbortCallback=======================>");
console.info("==========================>err:=======================>", err.code);
console.info("==========================>abort:=======================>", data);
}
subscriber.getAbortCommonEvent(getAbortCallback);
```
### getAbortCommonEvent(Promise形式)
- 方法说明
获取当前有序公共事件是否取消的状态(Promise形式)
- 返回值
| 类型 | 说明 |
| ----------------- | ---------------------------------- |
| Promise\<boolean> | 表示当前有序公共事件是否取消的状态 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.getAbortCommonEvent().then((data) => {
console.info("==========================>getAbortCommonEvent:=======================>");
console.info("==========================>abort:=======================>", data);
});
```
### getSubscribeInfo(callback形式)
- 方法说明
获取订阅者的订阅信息(callback形式)
- 参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ---------------------------------------- | ---- | -------------------- |
| callback | AsyncCallback\<CommonEventSubscribeInfo> | 是 | 表示订阅者的订阅信息 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function getSubscribeInfoCallback(err, data) {
console.info("==========================>getSubscribeInfoCallback=======================>");
console.info("==========================>err:=======================>", err.code);
console.info("==========================>priority:=======================>", data.priority);
}
subscriber.getSubscribeInfo(getSubscribeInfoCallback);
```
### getSubscribeInfo(Promise形式)
- 方法说明
获取订阅者的订阅信息(Promise形式)
- 返回值
| 类型 | 说明 |
| ---------------------------------- | -------------------- |
| Promise\<CommonEventSubscribeInfo> | 表示订阅者的订阅信息 |
- 示例
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber.getSubscribeInfo().then((data) => {
console.info("==========================>getSubscribeInfo:=======================>");
console.info("==========================>priority:=======================>", data.priority);
});
```
\ No newline at end of file
### DataAbilityHelper模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.openFile(uri: string, mode: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string, callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
import ohos_data_rdb from '@ohos.data.rdb'
```
#### DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback\<number>)
- 接口说明
在指定的远程路径中打开文件(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
返回文件描述符。
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var mode = "rwt";
DAHelper.openFile(
"dataability:///com.example.DataAbility",
mode,
)
```
#### DataAbilityHelper.openFile(uri: string, mode: string)
- 接口说明
在指定的远程路径中打开文件(Promise形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
* 返回值
返回文件描述符。
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var mode = "rwt";
DAHelper.openFile(
"dataability:///com.example.DataAbility"
mode).then((void) => {
console.info("==========================>openFileCallback=======================>");
});
```
#### DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>)
- 接口说明
注册观察者以观察给定uri指定的数据(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<void> | 是 | 指示数据更改时的回调。 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var helper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
helper.on(
"dataChange",
"dataability:///com.example.DataAbility",
)
```
#### DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>)
- 接口说明
注册观察者以观察给定uri指定的数据(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<void> | 否 | 指示已注册的回调。 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var helper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
helper.off(
"dataChange",
"dataability:///com.example.DataAbility",
)
```
#### DataAbilityHelper.getType(uri: string, callback: AsyncCallback\<string>)
- 接口说明
获取给定URI指定的日期的MIME类型(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<string> | 是 | 回调方法 |
- 返回值
返回与uri指定的数据匹配的MIME类型。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getType(
"dataability:///com.example.DataAbility"
)
```
#### DataAbilityHelper.getType(uri: string)
- 接口说明
获取给定URI指定的日期的MIME类型(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
- 返回值
返回与uri指定的数据匹配的MIME类型。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getType(
"dataability:///com.example.DataAbility"
).then((void) => {
console.info("==========================>getTypeCallback=======================>");
});
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>)
- 接口说明
获取支持的文件的MIME类型(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ---------------------- | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
| callback | 只读 | AsyncCallback\<string> | 是 | 回调方法 |
- 返回值
返回匹配的MIME类型数组。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getFileTypes(
"dataability:///com.example.DataAbility",
"image/*"
)
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string)
- 接口说明
获取支持的文件的MIME类型(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
- 返回值
返回匹配的MIME类型数组。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getFileTypes(
"dataability:///com.example.DataAbility",
"image/*"
).then((void) => {
console.info("==========================>getFileTypesCallback=======================>");
});
```
#### DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\<string>)
- 接口说明
将引用数据功能的给定uri转换为规范化uri(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback\<string> | 是 | 回调方法 |
- 返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.normalizeUri(
"dataability:///com.example.DataAbility",
)
```
#### DataAbilityHelper.normalizeUri(uri: string)
- 接口说明
将引用数据功能的给定uri转换为规范化uri(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
- 返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.normalizeUri(
"dataability:///com.example.DataAbility",
).then((void) => {
console.info("==========================>normalizeUriCallback=======================>");
});
```
#### DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\<string>)
- 接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback\<string> | 是 | 回调方法 |
- 返回值
如果反规范化成功,则返回反规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.denormalizeUri(
"dataability:///com.example.DataAbility",
)
```
#### DataAbilityHelper.denormalizeUri(uri: string)
- 接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
- 返回值
如果反规范化成功,则返回反规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.denormalizeUri(
"dataability:///com.example.DataAbility",
).then((void) => {
console.info("==========================>denormalizeUriCallback=======================>");
});
```
#### DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\<void>)
- 接口说明
通知已注册的观察者uri指定的数据资源的更改(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<void> | 是 | 回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var helper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
helper.notifyChange(
"dataability:///com.example.DataAbility",
)
```
#### DataAbilityHelper.notifyChange(uri: string)
- 接口说明
通知已注册的观察者uri指定的数据资源的更改(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.notifyChange(
"dataability:///com.example.DataAbility",
).then((void) => {
console.info("==========================>notifyChangeCallback=======================>");
});
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>)
- 接口说明
将单个数据记录插入数据库(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回插入数据记录的索引。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const valueBucket = {
"name": "rose",
"age": 22,
"salary": 200.5,
"blobType": u8,
}
DAHelper.insert(
"dataability:///com.example.DataAbility",
valueBucket
)
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket)
- 接口说明
将单个数据记录插入数据库(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
- 返回值
返回插入数据记录的索引。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const valueBucket = {
"name": "rose1",
"age": 221,
"salary": 20.5,
"blobType": u8,
}
DAHelper.insert(
"dataability:///com.example.DataAbility",
valueBucket
).then((void) => {
console.info("==========================>insertCallback=======================>");
});
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>, callback: AsyncCallback\<number>)
- 接口说明
将多个数据记录插入数据库(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array<rdb.ValuesBucket> | 是 | 指示要插入的数据记录。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回插入的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,})
DAHelper.batchInsert(
"dataability:///com.example.DataAbility",
cars
)
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>)
- 接口说明
将多个数据记录插入数据库(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array<rdb.ValuesBucket> | 是 | 指示要插入的数据记录。 |
- 返回值
返回插入的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,})
DAHelper.batchInsert(
"dataability:///com.example.DataAbility",
cars
).then((void) => {
console.info("==========================>batchInsertCallback=======================>");
});
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
- 接口说明
从数据库中删除一个或多个数据记录(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回已删除的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.delete(
"dataability:///com.example.DataAbility",
da
)
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates)
- 接口说明
从数据库中删除一个或多个数据记录(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
- 返回值
返回已删除的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.delete(
"dataability:///com.example.DataAbility",
da
).then((void) => {
console.info("==========================>deleteCallback=======================>");
});
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
- 接口说明
更新数据库中的数据记录(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回更新的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const va = {
"name": "roe1",
"age": 21,
"salary": 20.5,
"blobType": u8,
}
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.update(
"dataability:///com.example.DataAbility",
va,
da
)
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates)
- 接口说明
更新数据库中的数据记录(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
- 返回值
返回更新的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const va = {
"name": "roe1",
"age": 21,
"salary": 20.5,
"blobType": u8,
}
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.update(
"dataability:///com.example.DataAbility",
va,
da
).then((void) => {
console.info("==========================>updateCallback=======================>");
});
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>)
- 接口说明
查询数据库中的数据(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要查询的数据的路径。 |
| columns | 只读 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback\<ResultSet> | 是 | 回调方法 |
- 返回值
返回查询结果
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars=new Array({"value1"}, {"value2"}, {"value3"}, {"value4"});
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.query(
"dataability:///com.example.DataAbility",
cars,
da
)
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates)
- 接口说明
查询数据库中的数据(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 读写 | string | 是 | 指示要查询的数据的路径。 |
| columns | 读写 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 读写 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
- 返回值
返回查询结果
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = await featureAbility.getDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars=new Array({"value1"}, {"value2"}, {"value3"}, {"value4"});
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.query(
"dataability:///com.example.DataAbility",
cars,
da
).then((void) => {
console.info("==========================>queryCallback=======================>");
});
```
### DataAbilityHelper模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.openFile(uri: string, mode: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string, callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\<string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
import ohos_data_rdb from '@ohos.data.rdb'
```
#### DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback\<number>)
- 接口说明
在指定的远程路径中打开文件(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
返回文件描述符。
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var mode = "rwt";
DAHelper.openFile(
"dataability:///com.example.DataAbility",
mode,
(err) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.openFile(uri: string, mode: string)
- 接口说明
在指定的远程路径中打开文件(Promise形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
* 返回值
返回文件描述符。
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var mode = "rwt";
DAHelper.openFile(
"dataability:///com.example.DataAbility"
mode).then((void) => {
console.info("==========================>openFileCallback=======================>");
});
```
#### DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>)
- 接口说明
注册观察者以观察给定uri指定的数据(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<void> | 是 | 指示数据更改时的回调。 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var helper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
function onChangeNotify() {
console.info("==========================>onChangeNotify=======================>");
};
helper.on(
"dataChange",
"dataability:///com.example.DataAbility",
onChangeNotify
)
```
#### DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>)
- 接口说明
注册观察者以观察给定uri指定的数据(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<void> | 否 | 指示已注册的回调。 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var helper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
function onChangeNotify() {
console.info("==========================>onChangeNotify=======================>");
};
helper.off(
"dataChange",
"dataability:///com.example.DataAbility",
)
helper.off(
"dataChange",
"dataability:///com.example.DataAbility",
onChangeNotify
)
```
#### DataAbilityHelper.getType(uri: string, callback: AsyncCallback\<string>)
- 接口说明
获取给定URI指定的日期的MIME类型(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<string> | 是 | 回调方法 |
- 返回值
返回与uri指定的数据匹配的MIME类型。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getType(
"dataability:///com.example.DataAbility",
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.getType(uri: string)
- 接口说明
获取给定URI指定的日期的MIME类型(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
- 返回值
返回与uri指定的数据匹配的MIME类型。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getType(
"dataability:///com.example.DataAbility"
).then((data) => {
console.info("==========================>getTypeCallback=======================>");
});
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>)
- 接口说明
获取支持的文件的MIME类型(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------------------------ | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
| callback | 只读 | AsyncCallback\<Array\<string>> | 是 | 回调方法 |
- 返回值
返回匹配的MIME类型数组。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getFileTypes(
"dataability:///com.example.DataAbility",
"image/*",
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string)
- 接口说明
获取支持的文件的MIME类型(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
- 返回值
返回匹配的MIME类型数组。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.getFileTypes(
"dataability:///com.example.DataAbility",
"image/*"
).then((data) => {
console.info("==========================>getFileTypesCallback=======================>");
});
```
#### DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\<string>)
- 接口说明
将引用数据功能的给定uri转换为规范化uri(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback\<string> | 是 | 回调方法 |
- 返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.normalizeUri(
"dataability:///com.example.DataAbility",
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.normalizeUri(uri: string)
- 接口说明
将引用数据功能的给定uri转换为规范化uri(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
- 返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.normalizeUri(
"dataability:///com.example.DataAbility",
).then((data) => {
console.info("==========================>normalizeUriCallback=======================>");
});
```
#### DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\<string>)
- 接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback\<string> | 是 | 回调方法 |
- 返回值
如果反规范化成功,则返回反规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.denormalizeUri(
"dataability:///com.example.DataAbility",,
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.denormalizeUri(uri: string)
- 接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
- 返回值
如果反规范化成功,则返回反规范化uri对象。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.denormalizeUri(
"dataability:///com.example.DataAbility",
).then((data) => {
console.info("==========================>denormalizeUriCallback=======================>");
});
```
#### DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\<void>)
- 接口说明
通知已注册的观察者uri指定的数据资源的更改(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback\<void> | 是 | 回调方法 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var helper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
helper.notifyChange(
"dataability:///com.example.DataAbility",,
(err) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.notifyChange(uri: string)
- 接口说明
通知已注册的观察者uri指定的数据资源的更改(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
DAHelper.notifyChange(
"dataability:///com.example.DataAbility",
).then((void) => {
console.info("==========================>notifyChangeCallback=======================>");
});
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>)
- 接口说明
将单个数据记录插入数据库(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回插入数据记录的索引。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const valueBucket = {
"name": "rose",
"age": 22,
"salary": 200.5,
"blobType": u8,
}
DAHelper.insert(
"dataability:///com.example.DataAbility",
valueBucket,
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket)
- 接口说明
将单个数据记录插入数据库(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
- 返回值
返回插入数据记录的索引。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const valueBucket = {
"name": "rose1",
"age": 221,
"salary": 20.5,
"blobType": u8,
}
DAHelper.insert(
"dataability:///com.example.DataAbility",
valueBucket
).then((data) => {
console.info("==========================>insertCallback=======================>");
});
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>, callback: AsyncCallback\<number>)
- 接口说明
将多个数据记录插入数据库(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array<rdb.ValuesBucket> | 是 | 指示要插入的数据记录。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回插入的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,})
DAHelper.batchInsert(
"dataability:///com.example.DataAbility",
cars,
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>)
- 接口说明
将多个数据记录插入数据库(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array<rdb.ValuesBucket> | 是 | 指示要插入的数据记录。 |
- 返回值
返回插入的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,},
{"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,})
DAHelper.batchInsert(
"dataability:///com.example.DataAbility",
cars
).then((data) => {
console.info("==========================>batchInsertCallback=======================>");
});
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
- 接口说明
从数据库中删除一个或多个数据记录(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回已删除的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.delete(
"dataability:///com.example.DataAbility",
da,
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates)
- 接口说明
从数据库中删除一个或多个数据记录(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
- 返回值
返回已删除的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.delete(
"dataability:///com.example.DataAbility",
da
).then((data) => {
console.info("==========================>deleteCallback=======================>");
});
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
- 接口说明
更新数据库中的数据记录(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback\<number> | 是 | 回调方法 |
- 返回值
返回更新的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const va = {
"name": "roe1",
"age": 21,
"salary": 20.5,
"blobType": u8,
}
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.update(
"dataability:///com.example.DataAbility",
va,
da,
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates)
- 接口说明
更新数据库中的数据记录(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
- 返回值
返回更新的数据记录数。
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
const va = {
"name": "roe1",
"age": 21,
"salary": 20.5,
"blobType": u8,
}
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.update(
"dataability:///com.example.DataAbility",
va,
da
).then((data) => {
console.info("==========================>updateCallback=======================>");
});
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>)
- 接口说明
查询数据库中的数据(callback形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要查询的数据的路径。 |
| columns | 只读 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback\<ResultSet> | 是 | 回调方法 |
- 返回值
返回查询结果
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars=new Array({"value1"}, {"value2"}, {"value3"}, {"value4"});
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.query(
"dataability:///com.example.DataAbility",
cars,
da,
(err, data) => {
console.info("==========================>Called=======================>");
});
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates)
- 接口说明
查询数据库中的数据(Promise形式)
- 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 读写 | string | 是 | 指示要查询的数据的路径。 |
| columns | 读写 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 读写 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
- 返回值
返回查询结果
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
var DAHelper = featureAbility.acquireDataAbilityHelper(
"dataability:///com.example.DataAbility"
);
var cars=new Array({"value1"}, {"value2"}, {"value3"}, {"value4"});
let da = new ohos_data_ability.DataAbilityPredicates()
DAHelper.query(
"dataability:///com.example.DataAbility",
cars,
da
).then((data) => {
console.info("==========================>queryCallback=======================>");
});
```
\ No newline at end of file
# FeatureAbility模块(JS端SDK接口)
# FeatureAbility模块
#### 支持设备
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbility(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.acquireDataAbilityHelper(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbility(parameter: StartAbilityParameter): Promise\<number> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter): Promise\<AbilityResult> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult): Promise\<void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus(): Promise\<boolean> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant(callback: AsyncCallback\<Want>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getContext() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf(callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.continueAbility(options: ContinueAbilityOptions, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant(): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getContext(): Context | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf(callback: AsyncCallback\<void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf(): Promise\<void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.connectAbility(request: Want, options:ConnectOptions): number | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback\<void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.disconnectAbility(connection: number): Promise\<void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 使用限制
## 使用限制
FeatureAbility模块的接口只能在Page类型的Ability调用
#### 导入模块
## 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
```
#### FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>)
## FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>): void
* 接口说明
......@@ -44,56 +42,12 @@ import featureAbility from '@ohos.ability.featureAbility'
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
- StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
* flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
* 返回值
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<number> | 是 | 被指定的回调方法 |
void
- 返回值
* 示例
- 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
......@@ -104,7 +58,7 @@ featureAbility.startAbility(
action: "",
entities: [""],
type: "",
flags: FLAG_AUTH_READ_URI_PERMISSION,
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.startability",
abilityName: "com.example.startability.MainAbility",
......@@ -117,7 +71,7 @@ featureAbility.startAbility(
#### FeatureAbility.startAbility(parameter: StartAbilityParameter)
## FeatureAbility.startAbility(parameter: StartAbilityParameter): Promise\<number>
* 接口说明
......@@ -125,57 +79,13 @@ featureAbility.startAbility(
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
- StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
* flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
* 返回值
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
void
- 返回值
* 示例
- 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
......@@ -200,7 +110,7 @@ featureAbility.startAbility(
#### FeatureAbility.acquireDataAbilityHelper(uri: string)
## FeatureAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper
* 接口说明
......@@ -208,13 +118,15 @@ featureAbility.startAbility(
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
* 返回值
返回dataAbilityHelper
| 类型 | 说明 |
| ----------------- | ------------------------------------------ |
| DataAbilityHelper | 用来协助其他Ability访问DataAbility的工具类 |
* 示例
......@@ -227,7 +139,7 @@ featureAbility.acquireDataAbilityHelper(
#### FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>)
## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>): void
* 接口说明
......@@ -237,54 +149,12 @@ featureAbility.acquireDataAbilityHelper(
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ---------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<number> | 是 | 被指定的回调方法 |
- StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
* flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<[AbilityResult](#AbilityResult类型说明)> | 是 | 被指定的回调方法 |
* 返回值
返回{@link AbilityResult}
[AbilityResult](#AbilityResult类型说明)
* 示例
......@@ -300,7 +170,7 @@ featureAbility.startAbilityForResult(
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.startabilityforresulttest1.MainAbility",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:""
},
},
......@@ -309,7 +179,7 @@ featureAbility.startAbilityForResult(
#### FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter)
## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter): Promise\<AbilityResult>
* 接口说明
......@@ -317,55 +187,13 @@ featureAbility.startAbilityForResult(
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
- StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
* flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
* 返回值
返回{@link AbilityResult}
[AbilityResult](#AbilityResult类型说明)
* 示例
......@@ -381,7 +209,7 @@ featureAbility.startAbilityForResult(
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.startabilityforresulttest2.MainAbility",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:"",
parameters:
{
......@@ -404,7 +232,7 @@ featureAbility.startAbilityForResult(
#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>)
## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>): void
* 接口说明
......@@ -415,56 +243,11 @@ featureAbility.startAbilityForResult(
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------- | ---- | ------------------- |
| parameter | 只读 | AbilityResult | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
* AbilityResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------------------------------------ |
| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) |
| want | 只读 | Want | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
* flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
| parameter | 只读 | [AbilityResult](#AbilityResult类型说明) | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
void
* 示例
```javascript
......@@ -480,7 +263,7 @@ featureAbility.terminateSelfWithResult(
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.finishwithresulttest1.MainAbility",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:"",
parameters: {
mykey0: 2222,
......@@ -499,7 +282,7 @@ featureAbility.terminateSelfWithResult(
#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult)
## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult): Promise\<void>
* 接口说明
......@@ -507,57 +290,12 @@ featureAbility.terminateSelfWithResult(
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------- | ---- | ------------------- |
| parameter | 只读 | AbilityResult | 是 | 表示被启动的Ability |
* AbilityResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------------------------------------ |
| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) |
| want | 只读 | Want | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
* flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------------------------- | ---- | ------------------- |
| parameter | 只读 | [AbilityResult](#AbilityResult类型说明) | 是 | 表示被启动的Ability |
* 返回值
void
* 示例
```javascript
......@@ -573,7 +311,7 @@ featureAbility.terminateSelfWithResult(
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.finishwithresulttest1.MainAbility",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:"",
parameters: {
mykey0: 2222,
......@@ -588,13 +326,13 @@ featureAbility.terminateSelfWithResult(
},
}
).then((void) => {
console.info("==========================>terminateSelfWithResult=======================>");
console.info("==========================>terminateSelfWithResult=======================>");
});
```
#### FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>)
## FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>): void
* 接口说明
......@@ -619,7 +357,7 @@ featureAbility.hasWindowFocus()
#### FeatureAbility.hasWindowFocus()
## FeatureAbility.hasWindowFocus(): Promise\<boolean>
* 接口说明
......@@ -627,7 +365,7 @@ featureAbility.hasWindowFocus()
* 参数描述
Null
* 返回值
......@@ -638,13 +376,13 @@ featureAbility.hasWindowFocus()
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.hasWindowFocus().then((void) => {
console.info("==========================>hasWindowFocus=======================>");
console.info("==========================>hasWindowFocus=======================>");
});
```
#### FeatureAbility.getWant(callback: AsyncCallback\<Want>)
## FeatureAbility.getWant(callback: AsyncCallback\<Want>)
* 接口说明
......@@ -658,8 +396,6 @@ featureAbility.hasWindowFocus().then((void) => {
* 返回值
void
* 示例
```javascript
......@@ -669,7 +405,7 @@ featureAbility.getWant()
#### FeatureAbility.getWant()
## FeatureAbility.getWant(): void
* 接口说明
......@@ -677,12 +413,10 @@ featureAbility.getWant()
* 参数描述
Null
* 返回值
void
* 示例
```javascript
......@@ -694,7 +428,7 @@ featureAbility.getWant().then((void) => {
#### FeatureAbility.getContext()
## FeatureAbility.getContext(): Context
* 接口说明
......@@ -714,7 +448,7 @@ context.getBundleName()
#### FeatureAbility.terminateSelf(callback: AsyncCallback\<void>)
## FeatureAbility.terminateSelf(callback: AsyncCallback\<void>): void
* 接口说明
......@@ -728,8 +462,6 @@ context.getBundleName()
* 返回值
void
* 示例
```javascript
......@@ -739,7 +471,7 @@ featureAbility.terminateSelf()
#### FeatureAbility.terminateSelf()
## FeatureAbility.terminateSelf(): Promise\<void>
* 接口说明
......@@ -751,8 +483,6 @@ featureAbility.terminateSelf()
* 返回值
* void
* 示例
```javascript
......@@ -761,7 +491,7 @@ featureAbility.terminateSelf().then((void) => { console.info("=============
});
```
#### FeatureAbility.connectAbility(*request*: Want, *options*:ConnectOptions): number
## FeatureAbility.connectAbility(request: Want, options:ConnectOptions): number
* 接口说明
......@@ -790,10 +520,7 @@ featureAbility.terminateSelf().then((void) => { console.info("=============
```javascript
import featureAbility from '@ohos.ability.featureAbility'
var mRemote;
var connId;
function onConnectCallback(element, remote){
mRemote = remote;
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
......@@ -815,7 +542,7 @@ var connId = featureAbility.connectAbility(
);
```
#### FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback<void>): void
## FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback\<void>): void
* 接口说明
......@@ -826,20 +553,15 @@ var connId = featureAbility.connectAbility(
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
var mRemote;
var connId;
function onConnectCallback(element, remote){
mRemote = remote;
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
......@@ -866,7 +588,7 @@ var result = featureAbility.disconnectAbility(connId,
);
```
#### FeatureAbility.disconnectAbility(connection: number): Promise<void>;
## FeatureAbility.disconnectAbility(connection: number): Promise\<void>
* 接口说明
......@@ -880,16 +602,11 @@ var result = featureAbility.disconnectAbility(connId,
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
var mRemote;
var connId;
function onConnectCallback(element, remote){
mRemote = remote;
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
......@@ -912,43 +629,75 @@ var connId = featureAbility.connectAbility(
var result = await featureAbility.disconnectAbility(connId);
```
#### FeatureAbility.continueAbility(options: ContinueAbilityOptions, callback: AsyncCallback<void>);
* 接口说明
迁移一个ability到目标设备,并返回执行结果(callback形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------- |
| options | 只读 | ContinueAbilityOptions | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
- ContinueAbilityOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------- | ---- | ----------------------------------------------------------- |
| deviceId | 只读 | string | 是 | 表示需要包含有关目标启动能力的信息 |
| reversible | 只读 | boolean | 是 | 是否支持回迁的标志,目前不支持该功能,为保留字段,可填false |
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
async StartContinueAbility(deviceId) {
let continueAbilityOptions = {
reversible: false,
deviceId: deviceId,
}
function ContinueAbilityCallback(err, data) {
console.info("[Demo] ContinueAbilityCallback, result err = " + JSON.stringify(err));
console.info("[Demo] ContinueAbilityCallback, result data= " + JSON.stringify(data));
}
await featureAbility.continueAbility(continueAbilityOptions, ContinueAbilityCallback);
console.info('[Demo] featureAbility.StartContinueAbility end');
}
this.StartContinueAbility(remoteDeviceId); //remoteDeviceId is acquired from DeviceManager
```
## AbilityResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------- | ---- | ------------------------------------------------------------ |
| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) |
| want | 只读 | [Want](#Want类型说明) | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 |
## StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | --------------------- | ---- | ------------------------------------------------------------ |
| want | 只读 | [Want](#Want类型说明) | 是 | 表示需要包含有关目标启动能力的信息。 |
| abilityStartSetting | 只读 | {[key: string]: any} | 否 | 表示能力的特殊属性,当开发者启动能力时,该属性可以作为调用中的输入参数传递。 |
## Want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------------- | ---- | ------------------------------------------------------------ |
| deviceId | 只读 | string | 否 | 表示运行指定Ability的设备ID。 |
| bundleName | 只读 | string | 否 | 表示包描述。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| abilityName | 只读 | string | 否 | 表示待启动的Ability名称。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| uri | 只读 | string | 否 | 表示Uri描述。如果在Want中指定了Uri,则Want将匹配指定的Uri信息,包括scheme, schemeSpecificPart, authority和path信息。 |
| type | 只读 | string | 否 | 表示MIME type类型描述,比如:"text/plain" 、 "image/*"等。 |
| flags | 只读 | number | 否 | 表示处理Want的方式。默认传数字,具体参考:[flags说明](#flags说明)。 |
| action | 只读 | string | 否 | 表示action选项描述。 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示WantParams描述。 |
| entities | 只读 | Array\<string> | 否 | 表示entities相关描述。 |
## flags说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源能力 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示迁移是可拉回的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,使用后台模式安装该功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Want}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
## AbilityStartSetting类型说明
abilityStartSetting属性是一个定义为[key: string]: any的对象,key对应设定类型为:AbilityStartSetting枚举类型,value对应设定类型为:AbilityWindowConfiguration枚举类型。
使用时通过featureAbility.AbilityStartSetting获取,示例:featureAbility.AbilityStartSetting.BOUNDS_KEY。
| 名称 | 参数 | 描述 |
| --------------- | --------------- | -------------------------- |
| BOUNDS_KEY | "abilityBounds" | 窗口显示大小属性的名称。 |
| WINDOW_MODE_KEY | "windowMode" | 窗口显示模式属性的名称。 |
| DISPLAY_ID_KEY | "displayId" | 窗口显示设备ID属性的名称。 |
## AbilityWindowConfiguration类型说明
使用时通过featureAbility.AbilityWindowConfiguration获取,示例:featureAbility.AbilityWindowConfiguration.WINDOW_MODE_UNDEFINED。
| 名称 | 参数 | 描述 |
| --------------------------- | ---- | ---------- |
| WINDOW_MODE_UNDEFINED | 0 | 未定义。 |
| WINDOW_MODE_FULLSCREEN | 1 | 全屏。 |
| WINDOW_MODE_SPLIT_PRIMARY | 100 | 分屏主屏。 |
| WINDOW_MODE_SPLIT_SECONDARY | 101 | 分屏次屏。 |
| WINDOW_MODE_FLOATING | 102 | 悬浮窗。 |
# Notification模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- |
| Notification.publish(request: NotificationRequest, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.publish(request: NotificationRequest) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancel(id: number, label: string, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancel(id:number, label?:string) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancel(id: number, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancelAll(callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancelAll() | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(type: SlotType, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(type: SlotType) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlots(slots: Array<NotificationSlot>, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlots(slots: Array<NotificationSlot>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlot(slotType: SlotType, callback: AsyncCallback<NotificationSlot>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlots(callback: AsyncCallback<Array<NotificationSlot>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlots() | 支持 | 支持 | 支持 | 支持 |
| Notification.removeSlot(slotType: SlotType, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAllSlots(callback: AsyncCallback<void>): void | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAllSlots(): Promise<void> | 支持 | 支持 | 支持 | 支持 |
| Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo) | 支持 | 支持 | 支持 | 支持 |
| Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.unsubscribe(subscriber: NotificationSubscriber) | 支持 | 支持 | 支持 | 支持 |
| Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.enableNotification(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback<boolean>) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled(callback: AsyncCallback<boolean>) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled() | 支持 | 支持 | 支持 | 支持 |
| Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.displayBadge(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 |
| Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback<boolean>) | 支持 | 支持 | 支持 | 支持 |
| Notification.isBadgeDisplayed(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array<NotificationSlot>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotsByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback<number>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotNumByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(hashCode: string, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(hashCode: string) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAll(bundle: BundleOption, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAll(callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAll(bundle?: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.getAllActiveNotifications(callback: AsyncCallback<Array<NotificationRequest>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getAllActiveNotifications() | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotificationCount(callback: AsyncCallback<number>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotificationCount() | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotifications(callback: AsyncCallback<Array<NotificationRequest>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotifications() | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback<WantAgent>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWantAgent(info: WantAgentInfo): Promise<WantAgent> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback<string>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getBundleName(agent: WantAgent): Promise<string> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getUid(agent: WantAgent, callback: AsyncCallback<number>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getUid(agent: WantAgent): Promise<number> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWant(agent: WantAgent, callback: AsyncCallback<Want>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWant(agent: WantAgent): Promise<Want> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.cancel(agent: WantAgent, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.cancel(agent: WantAgent): Promise<void> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback<CompleteData>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback<boolean>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise<boolean> | 支持 | 支持 | 支持 | 支持 |
#### 权限列表
#### 通知接口
#### 导入模块
```js
import notify from '@ohos.notification';
```
#### Notification.publish(request: NotificationRequest, callback: AsyncCallback<void>)
- 接口说明
发布通知(callback形式)
- publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | ------------------------------------------- |
| request | 只读 | NotificationRequest | 是 | 设置要发布通知内容的NotificationRequest对象 |
| callback | 只读 | AsyncCallback<void> | 是 | 被指定的回调方法 |
- NotificationRequest类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------------- | -------- | ------------------------------- | ---- | -------------------------- |
| content | 读、写 | NotificationContent | 是 | 通知内容 |
| id | 读、写 | number | 否 | 通知ID |
| slotType | 读、写 | SlotType | 否 | 通道类型 |
| isOngoing | 读、写 | boolean | 否 | 是否进行时通知 |
| isUnremovable | 读、写 | boolean | 否 | 是否可移除 |
| deliveryTime | 读、写 | number | 否 | 通知发送时间 |
| tapDismissed | 读、写 | boolean | 否 | 通知是否自动清除 |
| autoDeletedTime | 读、写 | number | 否 | 自动清除的时间 |
| wantAgent | 读、写 | WantAgent | 否 | 点击跳转的WantAgent |
| extraInfo | 读、写 | {[key: string]: any} | 否 | 扩展参数 |
| color | 读、写 | number | 否 | 通知背景颜色 |
| colorEnabled | 读、写 | boolean | 否 | 通知背景颜色是否使能 |
| isAlertOnce | 读、写 | boolean | 否 | 设置是否仅有一次此通知警报 |
| isStopwatch | 读、写 | boolean | 否 | 是否显示已用时间 |
| isCountDown | 读、写 | boolean | 否 | 是否显示倒计时时间 |
| isFloatingIcon | 读、写 | boolean | 否 | 是否显示状态栏图标 |
| isFloatingIcon | 读、写 | boolean | 否 | 是否显示状态栏图标 |
| label | 读、写 | string | 否 | 通知标签 |
| badgeIconStyle | 读、写 | number | 否 | 通知角标类型 |
| showDeliveryTime | 读、写 | boolean | 否 | 是否显示分发时间 |
| actionButtons | 读、写 | Array<NotificationActionButton> | 否 | 通知按钮,最多两个按钮 |
| smallIcon | 读、写 | PixelMap | 否 | 通知小图标 |
| largeIcon | 读、写 | PixelMap | 否 | 通知大图标 |
| creatorBundleName | 只读 | string | 否 | 创建通知的包名 |
| creatorUid | 只读 | number | 否 | 创建通知的UID |
| creatorPid | 只读 | number | 否 | 创建通知的PID |
| hashCode | 只读 | string | 否 | 通知唯一标识 |
| classification | 读、写 | string | 否 | 通知分类 |
NotificationContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ---------------------------- | ---- | -------------- |
| contentType | 读、写 | ContentType | 是 | 通知内容类型 |
| normal | 读、写 | NotificationBasicContent | 否 | 通知基本内容 |
| longText | 读、写 | NotificationLongTextContent | 否 | 通知长文本内容 |
| multiLine | 读、写 | NotificationMultiLineContent | 否 | 通知多行内容 |
- ContentType类型说明
| 名称 | 读写属性 | 类型 | 描述 |
| --------------------------------- | -------- | ----------- | ---------------- |
| NOTIFICATION_CONTENT_BASIC_TEXT | 只读 | ContentType | 普通类型通知 |
| NOTIFICATION_CONTENT_LONG_TEXT | 只读 | ContentType | 长文本类型通知 |
| NOTIFICATION_CONTENT_PICTURE | 只读 | ContentType | 图片类型通知 |
| NOTIFICATION_CONTENT_CONVERSATION | 只读 | ContentType | 社交类型通知 |
| NOTIFICATION_CONTENT_MULTILINE | 只读 | ContentType | 多行文本类型通知 |
- NotificationBasicContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
- NotificationLongTextContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
| longText | 读、写 | string | 是 | 通知的长文本 |
| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 |
| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 |
- NotificationMultiLineContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------- | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 |
| longTitle | 读、写 | string | 是 | 通知展开时的标题 |
| lines | 读、写 | Array<String> | 是 | 通知的多行文本 |
- NotificationPictureContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | -------------- | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 |
| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 |
| picture | 读、写 | image.PixelMap | 是 | 通知的图片内容 |
- NotificationActionButton类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------------------- | -------- | ----------------------------------------------- | ---- | ------------------------- |
| title | 读、写 | string | 是 | 按钮标题 |
| wantAgent | 读、写 | wantAgent | 是 | 点击按钮时触发的WantAgent |
| extras | 读、写 | Array<String> | 否 | 按钮扩展信息 |
| icon | 读、写 | image.PixelMap | 否 | 按钮图标 |
| userInput<sup>8+</sup> | 读、写 | [NotificationUserInput](#NotificationUserInput) | 否 | 用户输入对象实例 |
## NotificationUserInput<sup>8+</sup>
用户输入对象。
### 属性
| 名称 | 参数类型 | 可读 | 可写 | 说明 |
| -------- | -------- | ---- | ---- | ----------------------------- |
| inputKey | string | 是 | 是 | 用户输入时用于标识此输入的key |
- 返回值
返回值为void
- 示例
```js
//publish回调
function publishCallback(err) {
console.info("==========================>publishCallback=======================>");
}
//通知Request对象
var notificationRequest = {
id: 1,
content: {
contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: {
title: "test_title",
text: "test_text",
additionalText: "test_additionalText"
}
}
}
Notification.publish(notificationRequest, publishCallback)
```
#### Notification.publish(request: NotificationRequest)
- 接口说明
发布通知(Promise形式)
- 返回值
返回值为Promise<**void**>
- 示例
```js
//通知Request对象
var notificationRequest = {
notificationId: 1,
content: {
contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: {
title: "test_title",
text: "test_text",
additionalText: "test_additionalText"
}
}
}
Notification.publish(notificationRequest).then((void) => {
console.info("==========================>publishCallback=======================>");
});
```
#### Notification.cancel(id: number, label: string, callback: AsyncCallback<void>)
- 接口说明
取消与指定id和label相匹配的已发布通知(callback形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | -------------------- |
| id | 只读 | number | 是 | 通知ID |
| lable | 只读 | string | 是 | 通知标签 |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
- 返回值
返回值为void
- 示例
```js
//cancel回调
function cancelCallback(err) {
console.info("==========================>cancelCallback=======================>");
}
Notification.cancel(0, "label", cancelCallback)
```
#### Notification.cancel(id:number, label?:string)
- 接口说明
取消与指定id相匹配的已发布通知,label可以指定也可以不指定(Promise形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------ | ---- | -------- |
| id | 只读 | number | 是 | 通知ID |
| lable | 只读 | string | 是 | 通知标签 |
- 返回值
返回值为Promise<**void**>
- 示例
```js
Notification.cancel(0).then((void) => {
console.info("==========================>cancelCallback=======================>");
});
```
#### Notification.cancel(id: number, callback: AsyncCallback<void>)
- 接口说明
取消与指定id相匹配的已发布通知(callback形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | -------------------- |
| id | 只读 | number | 是 | 通知ID |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
- 返回值
返回值为void
- 示例
```js
//cancel回调
function cancelCallback(err) {
console.info("==========================>cancelCallback=======================>");
}
Notification.cancel(0, cancelCallback)
```
#### Notification.cancelAll(callback: AsyncCallback<void>)
- 接口说明
取消所有已发布的通知(callback形式)
- cancelAll参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
- 返回值
返回值为void
- 示例
```js
//cancel回调
function cancelAllback(err) {
console.info("==========================>cancelAllback=======================>");
}
Notification.cancelAll(cancelCallback)
```
#### Notification.cancelAll()
- 接口说明
取消所有已发布的通知(callback形式)
- 参数描述
无参数
- 返回值
返回值为void
- 示例
```js
Notification.cancelAll().then((void) => {
console.info("==========================>cancelAllback=======================>");
});
```
#### Notification.addSlot(type: SlotType, callback: AsyncCallback<void>)
- 接口说明
创建通知通道(callback形式)
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | ---------------------- |
| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
- SlotType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------------- | -------- | -------- | ---- | -------- |
| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 |
| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 |
| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 |
| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 |
* 返回值
返回值为void
* 示例
```js
//addslot回调
function addSlotCallBack(err) {
console.info("==========================>addSlotCallBack=======================>");
}
Notification.addSlot(SOCIAL_COMMUNICATION, addSlotCallBack)
```
#### Notification.addSlot(type: SlotType)
- 接口说明
创建通知通道(Promise形式)
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | -------- | ---- | ---------------------- |
| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 |
- 返回值
返回值为Promise<**void**>
- 示例
```js
Notification.addSlot(SOCIAL_COMMUNICATION).then((void) => {
console.info("==========================>addSlotCallback=======================>");
});
```
#### Notification.getSlot(slotType: SlotType, callback: AsyncCallback<NotificationSlot>)
- 接口说明
获取一个通知通道(callback形式)
- getSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------- | ---- | ----------------------------------------------------------- |
| slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
| callback | 只读 | AsyncCallback<NotificationSlot> | 是 | 表示被指定的回调方法 |
- 返回值
返回值为void
- 示例
```js
//getSlot回调
function getSlotCallback(err,data) {
console.info("==========================>getSlotCallback=======================>");
}
var slotType = SOCIAL_COMMUNICATION;
Notification.getSlot(slotType, getSlotCallback)
```
#### Notification.getSlot(slotType)
- 接口说明
获取一个通知通道(Promise形式)
* getSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------- | ---- | ----------------------------------------------------------- |
| slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
* 返回值
返回值为Promise<NotificationSlot>
* 示例
```js
var slotType = SOCIAL_COMMUNICATION;
Notification.getSlot(slotType).then((data) => {
console.info("==========================>getSlotCallback=======================>");
```
#### Notification.getSlots(callback: AsyncCallback<Array<NotificationSlot>>)
- 接口说明
获取此应用程序的所有通知通道(callback形式)
- getSlots参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback<NotificationSlot> | 是 | 表示被指定的回调方法 |
- 返回值
返回值为void
- 示例
```js
//getSlots回调
function getSlotsCallback(err,data) {
console.info("==========================>getSlotsCallback=======================>");
}
Notification.getSlots(getSlotsCallback)
```
#### Notification.getSlots()
- 接口说明
获取此应用程序的所有通知通道(Promise形式)
- getSlots参数描述
无参数
- 返回值
返回值为Promise<Array<NotificationSlot>>
- 示例
```js
Notification.getSlots().then((data) => {
console.info("==========================>getSlotsCallback=======================>");
```
#### Notification.removeSlot(slotType: SlotType, callback: AsyncCallback<void>)
- 接口说明
根据通知通道类型删除创建的通知通道(callback形式)
- removeSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | ----------------------------------------------------------- |
| SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
-
返回值为void
- 示例
```js
//removeSlot回调
function removeSlotCallback(err) {
console.info("==========================>removeSlotCallback=======================>");
}
var slotType = SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType,removeSlotCallback)
```
#### Notification.removeSlot(slotType: SlotType)
- 接口说明
根据通知通道类型删除创建的通知通道(Promise形式)
- removeSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------- | ---- | ----------------------------------------------------------- |
| SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
-
返回值为Promise<**void**>
- 示例
```js
var slotType = SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType).then((void) => {
console.info("==========================>removeSlotCallback=======================>");
```
#### Notification.removeAllSlots(callback: AsyncCallback<void>)
- 接口说明
删除所有通知通道(callback形式)
- removeAllSlots参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback<void> | 是 | 表示被指定的回调方法 |
-
返回值为void
- 示例
```js
function removeAllCallBack(err) {
console.info("================>removeAllCallBack=======================>");
}
Notification.removeAllSlots(removeAllCallBack)
```
#### Notification.removeAllSlots()
- 接口说明
删除所有通知通道(Promise形式)
- removeAllSlots参数描述
参数无
-
返回值为Promise<**void**>
- 示例
```js
Notification.removeAllSlots().then((void) => {
console.info("==========================>removeAllCallBack=======================>");
});
```
#### Notification.getAllActiveNotifications(callback: AsyncCallback<Array<NotificationRequest>>)
- 接口说明
获取活动通知(Callback形式)
- getAllActiveNotifications参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback<Array<NotificationRequest>> | 是 | 获取活动通知回调函数 |
-
返回值为void
- 示例
```js
function getAllActiveNotificationsCallback(err, data) {
console.info("==========================>getAllActiveNotificationsCallback=======================>");
}
Notification.getAllActiveNotifications(getAllActiveNotificationsCallback);
```
#### Notification.getAllActiveNotifications()
- 接口说明
获取活动通知(Promise形式)
- getAllActiveNotifications参数描述
-
返回值为Promise<Array<NotificationRequest>>
- 示例
```js
Notification.getAllActiveNotifications().then((data) => {
console.info("==========================>getAllActiveNotificationsCallback=======================>");
});
```
#### Notification.getActiveNotificationCount(callback: AsyncCallback<**number**>)
- 接口说明
获取当前应用的活动通知数(Callback形式)
- getActiveNotificationCount参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------- | ---- | ---------------------- |
| callback | 只读 | AsyncCallback<**number**> | 是 | 获取活动通知数回调函数 |
-
返回值为void
- 示例
```js
function getActiveNotificationCountCallback(err, data) {
console.info("==========================>getActiveNotificationCountCallback=======================>");
}
Notification.getActiveNotificationCount(getActiveNotificationCountCallback);
```
#### Notification.getActiveNotificationCount()
- 接口说明
获取当前应用的活动通知数(Promise形式)
- getActiveNotificationCount参数描述
-
返回值为Promise<**number**>
- 示例
```js
Notification.getActiveNotificationCount().then((data) => {
console.info("==========================>getActiveNotificationCountCallback=======================>");
});
```
#### Notification.getActiveNotifications(callback: AsyncCallback<Array<NotificationRequest>>)
- 接口说明
获取当前应用的活动通知(Callback形式)
- getActiveNotifications参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------------------------- | ---- | ------------------------------ |
| callback | 只读 | AsyncCallback<Array<NotificationRequest>> | 是 | 获取当前应用的活动通知回调函数 |
-
返回值为void
- 示例
```js
function getActiveNotificationsCallback(err, data) {
console.info("==========================>getActiveNotificationsCallback=======================>");
}
Notification.getActiveNotifications(getActiveNotificationsCallback);
```
#### Notification.getActiveNotifications()
- 接口说明
获取当前应用的活动通知(Promise形式)
- getActiveNotifications参数描述
-
返回值为Promise<Array<NotificationRequest>>
- 示例
```js
Notification.getActiveNotifications().then((data) => {
console.info("==========================>getActiveNotificationsCallback=======================>");
});
```
## notification.setDoNotDisturbDate<sup>8+</sup>
setDoNotDisturbDate(date:DoNotDisturbDate,callback: AsyncCallback&lt;void&gt;): void
设置免打扰时间。
需要权限ohos.permission.NOTIFICATION_CONTROLLER
- 参数:
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------------------- | ---- | ---------------------- |
| date | [DoNotDisturbDate](#DoNotDisturbDate) | 是 | 免打扰时间选项 |
| callback | AsyncCallback&lt;void&gt; | 是 | 设置免打扰时间回调函数 |
- 示例:
```
function setDoNotDisturbDateCallback(err) {
console.info("setDoNotDisturbDateCallback");
}
var doNotDisturbDate = {
type : notification.DoNotDisturbType.TYPE_ONCE,
begin : new Date(),
end : new Date(2021, 11, 15, 18, 0)
}
notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
```
## notification.setDoNotDisturbDate<sup>8+</sup>
setDoNotDisturbDate(date:DoNotDisturbDate): Promise\<void\>
设置免打扰时间。
需要权限ohos.permission.NOTIFICATION_CONTROLLER
- 参数:
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------------------------------------- | ---- | -------------- |
| date | [DoNotDisturbDate](#DoNotDisturbDate) | 是 | 免打扰时间选项 |
- 返回值:
| 类型 | 说明 |
| --------------- | --------------- |
| Promise\<void\> | Promise方式返回 |
- 示例:
```
var doNotDisturbDate = {
type : notification.DoNotDisturbType.TYPE_ONCE,
begin : new Date(),
end : new Date(2021, 11, 15, 18, 0)
}
notification.setDoNotDisturbDate(doNotDisturbDate).then(() => {
console.info("setDoNotDisturbDatePromise");
});
```
## notification.getDoNotDisturbDate<sup>8+</sup>
getDoNotDisturbDate(callback: AsyncCallback\<DoNotDisturbDate\>): void
查询免打扰时间。
需要权限ohos.permission.NOTIFICATION_CONTROLLER
- 参数:
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------------------------------- | ---- | ---------------------- |
| callback | AsyncCallback&lt;[DoNotDisturbDate](#DoNotDisturbDate)&gt; | 是 | 查询免打扰时间回调函数 |
- 示例:
```
function getDoNotDisturbDateCallback(err,data) {
console.info("getDoNotDisturbDateCallback");
}
notification.getDoNotDisturbDate(getDoNotDisturbDateCallback);
```
## notification.getDoNotDisturbDate<sup>8+</sup>
getDoNotDisturbDate(): Promise&lt;DoNotDisturbDate&gt;
查询免打扰时间。
需要权限ohos.permission.NOTIFICATION_CONTROLLER
- 返回值:
| 类型 | 说明 |
| ---------------------------------------------------- | ----------------------------- |
| Promise&lt;[DoNotDisturbDate](#DoNotDisturbDate)&gt; | Promise方式返回的免打时间信息 |
- 示例:
```
notification.getDoNotDisturbDate().then((data) => {
console.info("getDoNotDisturbDatePromise");
});
```
## notification.supportDoNotDisturbMode<sup>8+</sup>
supportDoNotDisturbMode(callback: AsyncCallback\<boolean\>): void
查询是否支持勿扰模式功能。
需要权限ohos.permission.NOTIFICATION_CONTROLLER
- 参数:
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | -------------------------------- |
| callback | AsyncCallback\<boolean\>; | 是 | 查询是否支持勿扰模式功能回调函数 |
- 示例:
```
function supportDoNotDisturbModeCallback(err,data) {
console.info("supportDoNotDisturbModeCallback");
}
notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback);
```
## notification.supportDoNotDisturbMode<sup>8+</sup>
supportDoNotDisturbMode(): Promise\<boolean\>
查询是否支持勿扰模式功能。
需要权限ohos.permission.NOTIFICATION_CONTROLLER
- 返回值:
| 类型 | 说明 |
| ------------------ | ------------------------- |
| Promise\<boolean\> | Promise方式返回的支持结果 |
- 示例:
```
notification.supportDoNotDisturbMode().then((data) => {
console.info("supportDoNotDisturbModePromise");
});
```
## DoNotDisturbType<sup>8+</sup>
免打扰时间类型。
| 名称 | 默认值 | 说明 |
| ------------ | ------ | -------------------------------------- |
| TYPE_NONE | 0 | 非通知勿扰类型 |
| TYPE_ONCE | 1 | 设置时间段内执行一次勿扰 |
| TYPE_DAILY | 2 | 设置时间段(只看小时和分钟)每天执行勿扰 |
| TYPE_CLEARLY | 3 | 以设置时间段(明确年月日时分)执行勿扰 |
## DoNotDisturbDate<sup>8+</sup>
免打扰时间。
### 属性
| 名称 | 参数类型 | 可读 | 可写 | 说明 |
| ----- | ------------------------------------- | ---- | ---- | ------------------------ |
| type | [DoNotDisturbType](#DoNotDisturbType) | 是 | 是 | 指定免打扰设置的时间类型 |
| begin | Date | 是 | 是 | 指定免打扰设置的起点时间 |
| end | Date | 是 | 是 | 指定免打扰设置的结束时间 |
#### WantAgent接口
#### 导入模块
```js
import WantAgent from '@ohos.wantAgent';
```
#### WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback<WantAgent>)
- 接口说明
创建WantAgent(callback形式)
- getWantAgent参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------ | ---- | ----------------------- |
| info | 只读 | WantAgentInfo | 是 | WantAgent信息 |
| callback | 只读 | AsyncCallback<WantAgent> | 是 | 创建WantAgent的回调方法 |
- WantAgentInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------------------------- | ---- | ---------------------- |
| wants | 读、写 | Array<Want> | 是 | 将被执行的动作列表 |
| operationType | 读、写 | wantAgent.OperationType | 是 | 动作类型 |
| requestCode | 读、写 | number | 是 | 使用者定义的一个私有值 |
| wantAgentFlags | 读、写 | Array<wantAgent.WantAgentFlags> | 否 | 动作执行属性 |
| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 |
-
WantAgentFlags类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ---- | ---- | ------------------------------------------------------------ |
| ONE_TIME_FLAG | 只读 | enum | 否 | WantAgent仅能使用一次 |
| NO_BUILD_FLAG | 只读 | enum | 否 | 如果描述WantAgent对象不存在,则不创建它,直接返回null |
| CANCEL_PRESENT_FLAG | 只读 | enum | 否 | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象 |
| UPDATE_PRESENT_FLAG | 只读 | enum | 否 | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据 |
| CONSTANT_FLAG | 只读 | enum | 否 | WantAgent是不可变的 |
| REPLACE_ELEMENT | 只读 | enum | 否 | 当前Want中的element属性可被WantAgent.trigger()中Want的element属性取代 |
| REPLACE_ACTION | 只读 | enum | 否 | 当前Want中的action属性可被WantAgent.trigger()中Want的action属性取代 |
| REPLACE_URI | 只读 | enum | 否 | 当前Want中的uri属性可被WantAgent.trigger()中Want的uri属性取代 |
| REPLACE_ENTITIES | 只读 | enum | 否 | 当前Want中的entities属性可被WantAgent.trigger()中Want的entities属性取代 |
| REPLACE_BUNDLE | 只读 | enum | 否 | 当前Want中的bundleName属性可被WantAgent.trigger()中Want的bundleName属性取代 |
- OperationType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------------- | -------- | ---- | ---- | ----------------------- |
| UNKNOWN_TYPE | 只读 | enum | 否 | 不识别的类型 |
| START_ABILITY | 只读 | enum | 否 | 开启一个有页面的Ability |
| START_ABILITIES | 只读 | enum | 否 | 开启多个有页面的Ability |
| START_SERVICE | 只读 | enum | 否 | 开启一个无页面的ability |
| SEND_COMMON_EVENT | 只读 | enum | 否 | 发送一个公共事件 |
-
返回值为void
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
```
#### WantAgent.getWantAgent(info: WantAgentInfo): Promise<WantAgent>
- 接口说明
创建WantAgent(Promise形式)
- getWantAgent参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------------- | ---- | ------------- |
| info | 只读 | WantAgentInfo | 是 | WantAgent信息 |
-
返回值为Promise<WantAgent>
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
});
```
#### WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback<string>)
- 接口说明
获取WantAgent实例的包名(callback形式)
- getBundleName参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | --------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback<string> | 是 | 获取WantAgent实例的包名的回调方法 |
- 返回值为void
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getBundleName回调
function getBundleNameCallback(err, data) {
console.info("==========================>getBundleNameCallback=======================>");
}
wantAgent.getBundleName(WantAgent, getBundleNameCallback)
```
#### WantAgent.getBundleName(agent: WantAgent): Promise<string>
- 接口说明
获取WantAgent实例的包名(Promise形式)
- getBundleName参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
-
返回值为Promise<string>
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
});
wantAgent.getBundleName(WantAgent).then((data) => {
console.info("==========================>getBundleNameCallback=======================>");
});
```
#### WantAgent.getUid(agent: WantAgent, callback: AsyncCallback<number>)
- 接口说明
获取WantAgent实例的用户ID(callback形式)
- getUid参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ----------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback<number> | 是 | 获取WantAgent实例的用户ID的回调方法 |
- 返回值为void
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getUid回调
function getUidCallback(err, data) {
console.info("==========================>getUidCallback=======================>");
}
wantAgent.getUid(WantAgent, getUidCallback)
```
#### WantAgent.getUid(agent: WantAgent): Promise<number>
- 接口说明
获取WantAgent实例的用户ID(Promise形式)
- getUid参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
-
返回值为Promise<number>
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
});
wantAgent.getUid(WantAgent).then((data) => {
console.info("==========================>getUidCallback=======================>");
});
```
#### WantAgent.cancel(agent: WantAgent, callback: AsyncCallback<void>)
- 接口说明
取消WantAgent实例(callback形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | --------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback<void> | 是 | 取消WantAgent实例的回调方法 |
- 返回值为void
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//cancel回调
function cancelCallback(err, data) {
console.info("==========================>cancelCallback=======================>");
}
wantAgent.cancel(WantAgent, cancelCallback)
```
#### WantAgent.cancel(agent: WantAgent): Promise<void>
- 接口说明
取消WantAgent实例(Promise形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
-
返回值为Promise<void>
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
});
wantAgent.cancel(WantAgent).then((data) => {
console.info("==========================>cancelCallback=======================>");
});
```
#### WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback<CompleteData>)
- 接口说明
主动激发WantAgent实例(callback形式)
- trigger参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | --------------------------- | ---- | ------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| triggerInfo | 只读 | TriggerInfo | 是 | TriggerInfo对象 |
| callback | 只读 | AsyncCallback<CompleteData> | 是 | 主动激发WantAgent实例的回调方法 |
- TriggerInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | -------------------- | ---- | ----------- |
| code | 读、写 | number | 是 | result code |
| want | 读、写 | Want | 否 | Want |
| permission | 读、写 | string | 否 | 权限定义 |
| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 |
- 返回值为void
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//cancel回调
function triggerCallback(err, data) {
console.info("==========================>triggerCallback=======================>");
}
wantAgent.trigger(WantAgent, triggerCallback)
```
#### WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback<boolean>)
- 接口说明
判断两个WantAgent实例是否相等(callback形式)
- equal参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | --------------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback<boolean> | 是 | 判断两个WantAgent实例是否相等的回调方法 |
- 返回值为void
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent1;
var WantAgent2;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent1 = data;
WantAgent2 = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//cancel回调
function equalCallback(err, data) {
console.info("==========================>equalCallback=======================>");
}
wantAgent.equal(WantAgent1, WantAgent1, equalCallback)
```
#### WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise<boolean>
- 接口说明
判断两个WantAgent实例是否相等(Promise形式)
- equal参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 |
-
返回值为Promise<boolean>
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent1;
var WantAgent2;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
});
wantAgent.equal(WantAgent1, WantAgent2).then((data) => {
console.info("==========================>equalCallback=======================>");
});
```
####
# Notification模块
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- |
| Notification.publish(request: NotificationRequest, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.publish(request: NotificationRequest) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancel(id: number, label: string, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancel(id:number, label?:string) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancel(id: number, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancelAll(callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancelAll() | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(type: SlotType, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlot(type: SlotType) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlots(slots: Array\<NotificationSlot\>, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.addSlots(slots: Array\<NotificationSlot\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlot(slotType: SlotType, callback: AsyncCallback\<NotificationSlot\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlots(callback: AsyncCallback<Array\<NotificationSlot\>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlots() | 支持 | 支持 | 支持 | 支持 |
| Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAllSlots(callback: AsyncCallback\<void\>): void | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAllSlots(): Promise\<void\> | 支持 | 支持 | 支持 | 支持 |
| Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo) | 支持 | 支持 | 支持 | 支持 |
| Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.unsubscribe(subscriber: NotificationSubscriber) | 支持 | 支持 | 支持 | 支持 |
| Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.enableNotification(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\<boolean\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled(callback: AsyncCallback\<boolean\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.isNotificationEnabled() | 支持 | 支持 | 支持 | 支持 |
| Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.displayBadge(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 |
| Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\<boolean\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.isBadgeDisplayed(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array\<NotificationSlot\>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotsByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\<number\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getSlotNumByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(hashCode: string, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.remove(hashCode: string) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAll(callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeAll(bundle?: BundleOption) | 支持 | 支持 | 支持 | 支持 |
| Notification.getAllActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getAllActiveNotifications() | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotificationCount(callback: AsyncCallback\<number\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotificationCount() | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getActiveNotifications() | 支持 | 支持 | 支持 | 支持 |
| Notification.cancelGroup(groupName: string, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.cancelGroup(groupName: string) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.removeGroupByBundle(bundle: BundleOption, groupName: string) | 支持 | 支持 | 支持 | 支持 |
| Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.setDoNotDisturbDate(date: DoNotDisturbDate) | 支持 | 支持 | 支持 | 支持 |
| Notification.getDoNotDisturbDate(callback: AsyncCallback\<DoNotDisturbDate\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.getDoNotDisturbDate() | 支持 | 支持 | 支持 | 支持 |
| Notification.supportDoNotDisturbMode(callback: AsyncCallback\<boolean\>) | 支持 | 支持 | 支持 | 支持 |
| Notification.supportDoNotDisturbMode() | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\<WantAgent\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWantAgent(info: WantAgentInfo): Promise\<WantAgent\> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\<string\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getBundleName(agent: WantAgent): Promise\<string\> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\<number\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getUid(agent: WantAgent): Promise\<number\> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\<Want\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.getWant(agent: WantAgent): Promise\<Want\> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\<void\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.cancel(agent: WantAgent): Promise\<void\> | 支持 | 支持 | 支持 | 支持 |
| WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\<CompleteData\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\<boolean\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\<boolean\> | 支持 | 支持 | 支持 | 支持 |
## 权限列表
## 通知接口
## 导入模块
```js
import Notification from '@ohos.notification';
```
## Notification.publish(request: NotificationRequest, callback: AsyncCallback\<void\>)
- 接口说明
发布通知(callback形式)
- publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ------------------------------------------- |
| request | 只读 | NotificationRequest | 是 | 设置要发布通知内容的NotificationRequest对象 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 被指定的回调方法 |
- NotificationRequest类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------------- | -------- | --------------------------------- | ---- | -------------------------- |
| content | 读、写 | NotificationContent | 是 | 通知内容 |
| id | 读、写 | number | 否 | 通知ID |
| slotType | 读、写 | SlotType | 否 | 通道类型 |
| isOngoing | 读、写 | boolean | 否 | 是否进行时通知 |
| isUnremovable | 读、写 | boolean | 否 | 是否可移除 |
| deliveryTime | 读、写 | number | 否 | 通知发送时间 |
| tapDismissed | 读、写 | boolean | 否 | 通知是否自动清除 |
| autoDeletedTime | 读、写 | number | 否 | 自动清除的时间 |
| wantAgent | 读、写 | WantAgent | 否 | 点击跳转的WantAgent |
| extraInfo | 读、写 | {[key: string]: any} | 否 | 扩展参数 |
| color | 读、写 | number | 否 | 通知背景颜色 |
| colorEnabled | 读、写 | boolean | 否 | 通知背景颜色是否使能 |
| isAlertOnce | 读、写 | boolean | 否 | 设置是否仅有一次此通知警报 |
| isStopwatch | 读、写 | boolean | 否 | 是否显示已用时间 |
| isCountDown | 读、写 | boolean | 否 | 是否显示倒计时时间 |
| isFloatingIcon | 读、写 | boolean | 否 | 是否显示状态栏图标 |
| label | 读、写 | string | 否 | 通知标签 |
| badgeIconStyle | 读、写 | number | 否 | 通知角标类型 |
| showDeliveryTime | 读、写 | boolean | 否 | 是否显示分发时间 |
| actionButtons | 读、写 | Array\<NotificationActionButton\> | 否 | 通知按钮,最多两个按钮 |
| smallIcon | 读、写 | PixelMap | 否 | 通知小图标 |
| largeIcon | 读、写 | PixelMap | 否 | 通知大图标 |
| creatorBundleName | 只读 | string | 否 | 创建通知的包名 |
| creatorUid | 只读 | number | 否 | 创建通知的UID |
| creatorPid | 只读 | number | 否 | 创建通知的PID |
| hashCode | 只读 | string | 否 | 通知唯一标识 |
| classification | 读、写 | string | 否 | 通知分类 |
| groupName | 读、写 | string | 否 | 组通知名称 |
NotificationContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ---------------------------- | ---- | ------------------ |
| contentType | 读、写 | ContentType | 是 | 通知内容类型 |
| normal | 读、写 | NotificationBasicContent | 否 | 基本类型通知内容 |
| longText | 读、写 | NotificationLongTextContent | 否 | 长文本类型通知内容 |
| multiLine | 读、写 | NotificationMultiLineContent | 否 | 多行类型通知内容 |
| picture | 读、写 | NotificationPictureContent | 否 | 图片类型通知内容 |
- ContentType类型说明
| 名称 | 读写属性 | 类型 | 描述 |
| --------------------------------- | -------- | ----------- | ---------------- |
| NOTIFICATION_CONTENT_BASIC_TEXT | 只读 | ContentType | 普通类型通知 |
| NOTIFICATION_CONTENT_LONG_TEXT | 只读 | ContentType | 长文本类型通知 |
| NOTIFICATION_CONTENT_PICTURE | 只读 | ContentType | 图片类型通知 |
| NOTIFICATION_CONTENT_CONVERSATION | 只读 | ContentType | 社交类型通知 |
| NOTIFICATION_CONTENT_MULTILINE | 只读 | ContentType | 多行文本类型通知 |
- NotificationBasicContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
- NotificationLongTextContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
| longText | 读、写 | string | 是 | 通知的长文本 |
| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 |
| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 |
- NotificationMultiLineContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | --------------- | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 |
| longTitle | 读、写 | string | 是 | 通知展开时的标题 |
| lines | 读、写 | Array\<String\> | 是 | 通知的多行文本 |
- NotificationPictureContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | -------------- | ---- | -------------------------------- |
| title | 读、写 | string | 是 | 通知标题 |
| text | 读、写 | string | 是 | 通知内容 |
| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 |
| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 |
| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 |
| picture | 读、写 | image.PixelMap | 是 | 通知的图片内容 |
- SlotType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------------- | -------- | -------- | ---- | -------- |
| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 |
| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 |
| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 |
| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 |
- NotificationActionButton类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------------- |
| title | 读、写 | string | 是 | 按钮标题 |
| wantAgent | 读、写 | wantAgent | 是 | 点击按钮时触发的WantAgent |
| extras | 读、写 | Array\<String\> | 否 | 按钮扩展信息 |
| icon | 读、写 | image.PixelMap | 否 | 按钮图标 |
| userInput | 读、写 | NotificationUserInput | 否 | 用户输入对象实例 |
- NotificationUserInput类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------ | ---- | ----------------------------- |
| inputKey | 读、写 | string | 是 | 用户输入时用于标识此输入的key |
- 返回值
void
- 示例
```js
//publish回调
function publishCallback(err) {
console.info("==========================>publishCallback=======================>");
}
//通知Request对象
var notificationRequest = {
id: 1,
content: {
contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: {
title: "test_title",
text: "test_text",
additionalText: "test_additionalText"
}
}
}
Notification.publish(notificationRequest, publishCallback)
```
## Notification.publish(request: NotificationRequest)
- 接口说明
发布通知(Promise形式)
- 返回值
Promise\<void\>
- 示例
```js
//通知Request对象
var notificationRequest = {
notificationId: 1,
content: {
contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: {
title: "test_title",
text: "test_text",
additionalText: "test_additionalText"
}
}
}
Notification.publish(notificationRequest).then((void) => {
console.info("==========================>publishCallback=======================>");
});
```
## Notification.cancel(id: number, label: string, callback: AsyncCallback\<void\>)
- 接口说明
取消与指定id和label相匹配的已发布通知(callback形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| id | 只读 | number | 是 | 通知ID |
| label | 只读 | string | 是 | 通知标签 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//cancel回调
function cancelCallback(err) {
console.info("==========================>cancelCallback=======================>");
}
Notification.cancel(0, "label", cancelCallback)
```
## Notification.cancel(id:number, label?:string)
- 接口说明
取消与指定id相匹配的已发布通知,label可以指定也可以不指定(Promise形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------ | ---- | -------- |
| id | 只读 | number | 是 | 通知ID |
| label | 只读 | string | 否 | 通知标签 |
- 返回值
Promise\<void\>
- 示例
```js
Notification.cancel(0).then((void) => {
console.info("==========================>cancelCallback=======================>");
});
```
## Notification.cancel(id: number, callback: AsyncCallback\<void\>)
- 接口说明
取消与指定id相匹配的已发布通知(callback形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| id | 只读 | number | 是 | 通知ID |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//cancel回调
function cancelCallback(err) {
console.info("==========================>cancelCallback=======================>");
}
Notification.cancel(0, cancelCallback)
```
## Notification.cancelAll(callback: AsyncCallback\<void\>)
- 接口说明
取消所有已发布的通知(callback形式)
- cancelAll参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//cancel回调
function cancelAllback(err) {
console.info("==========================>cancelAllback=======================>");
}
Notification.cancelAll(cancelCallback)
```
## Notification.cancelAll()
- 接口说明
取消所有已发布的通知(Promise形式)
- 参数描述
无参数
- 返回值
Promise\<void\>
- 示例
```js
Notification.cancelAll().then((void) => {
console.info("==========================>cancelAllback=======================>");
});
```
## Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\<void\>)
- 接口说明
创建通知通道(callback形式)
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道对象 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- NotificationSlot类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------------- | -------- | --------------- | ---- | ------------------------------------------ |
| type | 读、写 | SlotType | 是 | 通道类型 |
| level | 读、写 | number | 否 | 通知级别,不设置则根据通知渠道类型有默认值 |
| desc | 读、写 | string | 否 | 通知渠道描述信息 |
| badgeFlag | 读、写 | boolean | 否 | 是否显示角标 |
| bypassDnd | 读、写 | boolean | 否 | 置是否在系统中绕过免打扰模式 |
| lockscreenVisibility | 读、写 | boolean | 否 | 在锁定屏幕上显示通知的模式 |
| vibrationEnabled | 读、写 | boolean | 否 | 是否可振动 |
| sound | 读、写 | string | 否 | 通知提示音 |
| lightEnabled | 读、写 | boolean | 否 | 是否闪灯 |
| lightColor | 读、写 | number | 否 | 通知灯颜色 |
| vibrationValues | 读、写 | Array\<number\> | 否 | 通知振动样式 |
* 返回值
void
* 示例
```js
//addslot回调
function addSlotCallBack(err) {
console.info("==========================>addSlotCallBack=======================>");
}
//通知slot对象
var notificationSlot = {
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.addSlot(notificationSlot, addSlotCallBack)
```
## Notification.addSlot(slot: NotificationSlot)
- 接口说明
创建通知通道(Promise形式)
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ---------------- | ---- | -------------------- |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道对象 |
- 返回值
Promise\<void\>
- 示例
```js
//通知slot对象
var notificationSlot = {
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.addSlot(notificationSlot).then((void) => {
console.info("==========================>addSlotCallback=======================>");
});
```
## Notification.addSlot(type: SlotType, callback: AsyncCallback\<void\>)
- 接口说明
创建通知通道(callback形式)
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ---------------------- |
| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//addslot回调
function addSlotCallBack(err) {
console.info("==========================>addSlotCallBack=======================>");
}
Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION, addSlotCallBack)
```
## Notification.addSlot(type: SlotType)
- 接口说明
创建通知通道(Promise形式)
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | -------- | ---- | ---------------------- |
| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 |
- 返回值
Promise\<void\>
- 示例
```js
Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION).then((void) => {
console.info("==========================>addSlotCallback=======================>");
});
```
## Notification.addSlots(slots: Array\<NotificationSlot\>, callback: AsyncCallback\<void\>)
- 接口说明
创建多个通知通道(callback形式)
- addSlots数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------- | ---- | ------------------------ |
| slots | 只读 | Array\<NotificationSlot\> | 是 | 要创建的通知通道对象数组 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//addSlots回调
function addSlotsCallBack(err) {
console.info("==========================>addSlotsCallBack=======================>");
}
//通知slot对象
var notificationSlot = {
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
//通知slot array 对象
var notificationSlotArray = new Array();
notificationSlotArray[0] = notificationSlot;
Notification.addSlots(notificationSlotArray, addSlotsCallBack)
```
## Notification.addSlots(slots: Array\<NotificationSlot\>)
- 接口说明
创建多个通知通道(Promise形式)
- addSlots数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------------------------- | ---- | ------------------------ |
| slots | 只读 | Array\<NotificationSlot\> | 是 | 要创建的通知通道对象数组 |
- 返回值
Promise\<void\>
- 示例
```js
//通知slot对象
var notificationSlot = {
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
//通知slot array 对象
var notificationSlotArray = new Array();
notificationSlotArray[0] = notificationSlot;
Notification.addSlots(notificationSlotArray).then((void) => {
console.info("==========================>addSlotCallback=======================>");
});
```
## Notification.getSlot(slotType: SlotType, callback: AsyncCallback\<NotificationSlot\>)
- 接口说明
获取一个通知通道(callback形式)
- getSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------------- | ---- | ----------------------------------------------------------- |
| slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
| callback | 只读 | AsyncCallback\<NotificationSlot\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//getSlot回调
function getSlotCallback(err,data) {
console.info("==========================>getSlotCallback=======================>");
}
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.getSlot(slotType, getSlotCallback)
```
## Notification.getSlot(slotType)
- 接口说明
获取一个通知通道(Promise形式)
- getSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------- | ---- | ----------------------------------------------------------- |
| slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
- 返回值
Promise\<NotificationSlot\>
- 示例
```js
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.getSlot(slotType).then((data) => {
console.info("==========================>getSlotCallback=======================>");
});
```
## Notification.getSlots(callback: AsyncCallback<Array\<NotificationSlot\>>)
- 接口说明
获取此应用程序的所有通知通道(callback形式)
- getSlots参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<NotificationSlot\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//getSlots回调
function getSlotsCallback(err,data) {
console.info("==========================>getSlotsCallback=======================>");
}
Notification.getSlots(getSlotsCallback)
```
## Notification.getSlots()
- 接口说明
获取此应用程序的所有通知通道(Promise形式)
- getSlots参数描述
无参数
- 返回值
Promise\<Array\<NotificationSlot\>\>
- 示例
```js
Notification.getSlots().then((data) => {
console.info("==========================>getSlotsCallback=======================>");
});
```
## Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\<void\>)
- 接口说明
根据通知通道类型删除创建的通知通道(callback形式)
- removeSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ----------------------------------------------------------- |
| SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
//removeSlot回调
function removeSlotCallback(err) {
console.info("==========================>removeSlotCallback=======================>");
}
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType,removeSlotCallback)
```
## Notification.removeSlot(slotType: SlotType)
- 接口说明
根据通知通道类型删除创建的通知通道(Promise形式)
- removeSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------- | ---- | ----------------------------------------------------------- |
| SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 |
- 返回值
Promise\<void\>
- 示例
```js
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType).then((void) => {
console.info("==========================>removeSlotCallback=======================>");
});
```
## Notification.removeAllSlots(callback: AsyncCallback\<void\>)
- 接口说明
删除所有通知通道(callback形式)
- removeAllSlots参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
function removeAllCallBack(err) {
console.info("================>removeAllCallBack=======================>");
}
Notification.removeAllSlots(removeAllCallBack)
```
## Notification.removeAllSlots()
- 接口说明
删除所有通知通道(Promise形式)
- removeAllSlots参数描述
参数无
- 返回值
Promise\<void\>
- 示例
```js
Notification.removeAllSlots().then((void) => {
console.info("==========================>removeAllCallBack=======================>");
});
```
## Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\<void\>)
- 接口说明
订阅通知并指定订阅信息(callback形式)
- subscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------------------- | ---- | ---------------- |
| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 |
| info | 只读 | NotificationSubscribeInfo | 是 | 订阅信息 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 订阅动作回调函数 |
- NotificationSubscriber类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------------------------------------------------ | -------- | -------- | ---- | -------------------------- |
| onConsume?:(data: SubscribeCallbackData) | 读、写 | function | 否 | 接收通知回调函数 |
| onCancel?:(data: SubscribeCallbackData) | 读、写 | function | 否 | 删除通知回调函数 |
| onUpdate?:(data: NotificationSortingMap) | 读、写 | function | 否 | 更新通知排序回调函数 |
| onConnect?:() | 读、写 | function | 否 | 注册订阅回调函数 |
| onDisconnect?:() | 读、写 | function | 否 | 取消订阅回调函数 |
| onDestroy?:() | 读、写 | function | 否 | 服务失联回调函数 |
| onDoNotDisturbDateChange?:(mode: notification.DoNotDisturbDate) | 读、写 | function | 否 | 免打扰时间选项变更回调函数 |
- SubscribeCallbackData 类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------------- | -------- | ---------------------- | ---- | -------- |
| request | 只读 | NotificationRequest | 是 | 通知内容 |
| sortingMap | 只读 | NotificationSortingMap | 否 | 排序信息 |
| reason | 只读 | number | 否 | 删除原因 |
| sound | 只读 | string | 否 | 通知声音 |
| vibrationValues | 只读 | Array\<number\> | 否 | 通知震动 |
- NotificationSortingMap类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------------------------------ | ---- | ---------------- |
| sortings | 只读 | {[key: string]: NotificationSorting} | 是 | 通知排序信息数组 |
| sortedHashCode | 只读 | Array\<string\> | 是 | 通知唯一标识数组 |
- NotificationSorting 类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------- | ---- | ------------ |
| slot | 只读 | NotificationSlot | 是 | 通知通道内容 |
| hashCode | 只读 | string | 是 | 通知唯一标识 |
| ranking | 只读 | number | 是 | 通知排序序号 |
- DoNotDisturbType类型说明
| 名称 | 读写属性 | 类型 | 描述 |
| ------------ | -------- | --------------------- | ---------------------------------------- |
| TYPE_NONE | 只读 | enum DoNotDisturbType | 非通知勿扰类型 |
| TYPE_ONCE | 只读 | enum DoNotDisturbType | 以设置时间段(只看小时和分钟)一次执行勿扰 |
| TYPE_DAILY | 只读 | enum DoNotDisturbType | 以设置时间段(只看小时和分钟)每天执行勿扰 |
| TYPE_CLEARLY | 只读 | enum DoNotDisturbType | 以设置时间段(明确年月日时分)执行勿扰 |
- DoNotDisturbDate类型说明
| 名称 | 读写属性 | 类型 | 描述 |
| ----- | -------- | ---------------- | ------------------------ |
| type | 读写 | DoNotDisturbType | 指定免打扰设置的时间类型 |
| begin | 读写 | Date | 指定免打扰设置的起点时间 |
| end | 读写 | Date | 指定免打扰设置的终点时间 |
- NotificationSubscribeInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | --------------- | ---- | ------------------------------- |
| bundleNames | 读、写 | Array\<string\> | 否 | 指定订阅哪些包名的APP发来的通知 |
| userId | 读、写 | number | 否 | 指定订阅哪个用户下发来的通知 |
- 返回值
void
- 示例
```js
//subscribe回调
function subscribeCallback(err) {
console.info("==========================>subscribeCallback=======================>");
}
function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume: onConsumeCallback
}
var info = {
bundleNames: ["bundleName1","bundleName2"]
}
Notification.subscribe(subscriber, info, subscribeCallback);
```
## Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
- 接口说明
订阅通知并指定订阅信息(callback形式)
- subscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | ---------------- |
| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 订阅动作回调函数 |
- 返回值
void
- 示例
```js
function subscribeCallback(err) {
console.info("==========================>subscribeCallback=======================>");
}
function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume: onConsumeCallback
}
Notification.subscribe(subscriber, subscribeCallback);
```
## Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo)
- 接口说明
订阅通知并指定订阅信息(Promise形式)
- subscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------------------- | ---- | ------------ |
| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 |
| info | 只读 | NotificationSubscribeInfo | 否 | 订阅信息 |
- 返回值
Promise\<void\>
- 示例
```js
function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume: onConsumeCallback
};
Notification.subscribe(subscriber).then((void) => {
console.info("==========================>subscribeCallback=======================>");
});
```
## Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
- 接口说明
取消订阅(callbcak形式)
- unsubscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | -------------------- |
| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 取消订阅动作回调函数 |
- 返回值
void
- 示例
```js
function unsubscribeCallback(err) {
console.info("==========================>unsubscribeCallback=======================>");
}
function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume: onConsumeCallback
}
Notification.unsubscribe(subscriber, unsubscribeCallback);
```
## Notification.unsubscribe(subscriber: NotificationSubscriber)
- 接口说明
取消订阅(Promise形式)
- unsubscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | ------------ |
| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 |
- 返回值
Promise\<void\>
- 示例
```js
function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume: onConsumeCallback
};
Notification.unsubscribe(subscriber).then((void) => {
console.info("==========================>unsubscribeCallback=======================>");
});
```
## Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
- 接口说明
设定指定包的通知使能状态(Callback形式)
- enableNotification参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| enable | 只读 | boolean | 是 | 使能状态 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 设定通知使能回调函数 |
- BundleOption类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------ | ---- | ------ |
| bundle | 读/写 | string | 是 | 包名 |
| uid | 读/写 | number | 否 | 用户id |
- 返回值
void
- 示例
```js
function enableNotificationCallback(err) {
console.info("==========================>enableNotificationCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
Notification.enableNotification(bundle, false, enableNotificationCallback);
```
## Notification.enableNotification(bundle: BundleOption, enable: boolean)
- 接口说明
设定指定包的通知使能状态(Promise形式)
- enableNotification参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| enable | 只读 | boolean | 是 | 使能状态 |
- 返回值
Promise\<void\>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
Notification.enableNotification(bundle, false).then((void) => {
console.info("==========================>enableNotificationCallback=======================>");
});
```
## Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
- 接口说明
获取指定包的通知使能状态(Callback形式)
- isNotificationEnabled参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ------------------------ |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 获取通知使能状态回调函数 |
- 返回值
void
- 示例
```js
function isNotificationEnabledCallback(err, data) {
console.info("==========================>isNotificationEnabledCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
Notification.isNotificationEnabled(bundle, isNotificationEnabledCallback);
```
## Notification.isNotificationEnabled(bundle: BundleOption)
- 接口说明
获取指定包的通知使能状态(Promise形式)
- isNotificationEnabled参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
- 返回值
Promise\<boolean\>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
Notification.isNotificationEnabled(bundle).then((data) => {
console.info("==========================>isNotificationEnabledCallback=======================>");
});
```
## Notification.isNotificationEnabled(callback: AsyncCallback\<boolean\>)
- 接口说明
获取通知使能状态(Callback形式)
- isNotificationEnabled参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ------------------------ |
| callback | 只读 | AsyncCallback\<void\> | 是 | 获取通知使能状态回调函数 |
- 返回值
void
- 示例
```js
function isNotificationEnabledCallback(err, data) {
console.info("==========================>isNotificationEnabledCallback=======================>");
}
Notification.isNotificationEnabled(isNotificationEnabledCallback);
```
## Notification.isNotificationEnabled()
- 接口说明
获取通知使能状态(Promise形式)
- isNotificationEnabled参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
- 返回值
Promise\<boolean\>
- 示例
```js
Notification.isNotificationEnabled().then((data) => {
console.info("==========================>isNotificationEnabledCallback=======================>");
});
```
## Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
- 接口说明
设定指定包的角标使能状态(Callback形式)
- displayBadge参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| enable | 只读 | boolean | 是 | 使能状态 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 设定角标使能回调函数 |
- 返回值
void
- 示例
```js
function displayBadgeCallback(err) {
console.info("==========================>displayBadgeCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
Notification.displayBadge(bundle, false, displayBadgeCallback);
```
## Notification.displayBadge(bundle: BundleOption, enable: boolean)
- 接口说明
设定指定包的角标使能状态(Promise形式)
- displayBadge参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| enable | 只读 | boolean | 是 | 使能状态 |
- 返回值
Promise\<void\>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
Notification.displayBadge(bundle, false).then((void) => {
console.info("==========================>displayBadgeCallback=======================>");
});
```
## Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
- 接口说明
获取指定包的角标使能状态(Callback形式)
- isBadgeDisplayed参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ------------------------ |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 获取角标使能状态回调函数 |
- 返回值
void
- 示例
```js
function isBadgeDisplayedCallback(err, data) {
console.info("==========================>isBadgeDisplayedCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
Notification.isBadgeDisplayed(bundle, isBadgeDisplayedCallback);
```
## Notification.isBadgeDisplayed(bundle: BundleOption)
- 接口说明
获取指定包的角标使能状态(Promise形式)
- isBadgeDisplayed参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
- 返回值
Promise\<boolean\>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
Notification.isBadgeDisplayed(bundle).then((data) => {
console.info("==========================>isBadgeDisplayedCallback=======================>");
});
```
## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\<void\>)
- 接口说明
设定指定包的通知通道状态(Callback形式)
- setSlotByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| slot | 只读 | NotificationSlot | 是 | 通知通道 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 设定通知通道回调函数 |
- 返回值
void
- 示例
```js
function setSlotByBundleCallback(err) {
console.info("==========================>setSlotByBundleCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
var notificationSlot = {
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.setSlotByBundle(bundle, notificationSlot, setSlotByBundleCallback);
```
## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot)
- 接口说明
设定指定包的角标使能状态(Promise形式)
- setSlotByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| enable | 只读 | boolean | 是 | 使能状态 |
- 返回值
Promise\<void\>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
var notificationSlot = {
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.displayBadge(bundle, notificationSlot).then((void) => {
console.info("==========================>setSlotByBundleCallback=======================>");
});
```
## Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array\<NotificationSlot\>>)
- 接口说明
获取指定包的通知通道(Callback形式)
- getSlotsByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------------------------- | ---- | -------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| callback | 只读 | AsyncCallback<Array\<NotificationSlot\>> | 是 | 获取通知通道回调函数 |
- 返回值
void
- 示例
```js
function getSlotsByBundleCallback(err, data) {
console.info("==========================>getSlotsByBundleCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
Notification.getSlotsByBundle(bundle, getSlotsByBundleCallback);
```
## Notification.getSlotsByBundle(bundle: BundleOption)
- 接口说明
获取指定包的通知通道(Promise形式)
- getSlotsByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
- 返回值
Promise<Array\<NotificationSlot\>>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
Notification.getSlotsByBundle(bundle).then((data) => {
console.info("==========================>getSlotsByBundleCallback=======================>");
});
```
## Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\<number\>)
- 接口说明
获取指定包的通知通道数(Callback形式)
- getSlotNumByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------- | ---- | ---------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| callback | 只读 | AsyncCallback\<number\> | 是 | 获取通知通道数回调函数 |
- 返回值
void
- 示例
```js
function getSlotNumByBundle(err, data) {
console.info("==========================>getSlotNumByBundleCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
Notification.getSlotNumByBundle(bundle, getSlotNumByBundleCallback);
```
## Notification.getSlotNumByBundle(bundle: BundleOption)
- 接口说明
获取指定包的通知通道数(Promise形式)
- getSlotNumByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
- 返回值
Promise\<number\>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
Notification.getSlotNumByBundle(bundle).then((data) => {
console.info("==========================>getSlotNumByBundleCallback=======================>");
});
```
## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\<void\>)
- 接口说明
删除指定通知(Callback形式)
- remove参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------------- | -------- | --------------------- | ---- | -------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| notificationKey | 只读 | NotificationKey | 是 | 通知键值 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 删除指定通知回调函数 |
- NotificationKey类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------ | ---- | -------- |
| id | 读、写 | number | 是 | 通知ID |
| label | 读、写 | string | 否 | 通知标签 |
- 返回值
void
- 示例
```js
function removeCallback(err) {
console.info("==========================>removeCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
var notificationKey = {
id: 0;
label: "label";
}
Notification.remove(bundle, notificationKey, removeCallback);
```
## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey)
- 接口说明
删除指定通知(Promise形式)
- remove参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------------- | -------- | --------------- | ---- | ---------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| notificationKey | 只读 | NotificationKey | 是 | 通知键值 |
- 返回值
Promise\<void\>
- 示例
```js
var bundle = {
bundle: "bundleName1";
}
var notificationKey = {
id: 0;
label: "label";
}
Notification.remove(bundle, notificationKey).then((void) => {
console.info("==========================>removeCallback=======================>");
});
```
## Notification.remove(hashCode: string, callback: AsyncCallback\<void\>)
- 接口说明
删除指定通知(Callback形式)
- remove参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| hashCode | 只读 | string | 是 | 通知唯一ID |
| callback | 只读 | AsyncCallback\<void\> | 是 | 删除指定通知回调函数 |
- 返回值
void
- 示例
```js
function removeCallback(err) {
console.info("==========================>removeCallback=======================>");
}
Notification.remove(hashCode, removeCallback);
```
## Notification.remove(hashCode: string)
- 接口说明
删除指定通知(Promise形式)
- remove参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------- | ---- | ---------- |
| hashCode | 只读 | string | 是 | 通知唯一ID |
- 返回值
Promise\<void\>
- 示例
```js
Notification.remove(hashCode).then((void) => {
console.info("==========================>removeCallback=======================>");
});
```
## Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\<void\>)
- 接口说明
删除指定包的所有通知(Callback形式)
- removeAll参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ---------------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 删除指定包的所有通知回调函数 |
- 返回值
void
- 示例
```js
function removeAllCallback(err) {
console.info("==========================>removeAllCallback=======================>");
}
var bundle = {
bundle: "bundleName1";
}
Notification.removeAll(bundle, removeAllCallback);
```
## Notification.removeAll(callback: AsyncCallback\<void\>)
- 接口说明
删除所有通知(Callback形式)
- removeAll参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<void\> | 是 | 删除所有通知回调函数 |
- 返回值
void
- 示例
```js
function removeAllCallback(err) {
console.info("==========================>removeAllCallback=======================>");
}
Notification.removeAll(removeAllCallback);
```
## Notification.removeAll(bundle?: BundleOption)
- 接口说明
删除所有通知(Promise形式)
- removeAll参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------ | -------- | ------------ | ---- | ---------- |
| bundle | 只读 | BundleOption | 否 | 指定包信息 |
- 返回值
Promise\<void\>
- 示例
```js
Notification.removeAll().then((void) => {
console.info("==========================>removeAllCallback=======================>");
});
```
## Notification.getAllActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
- 接口说明
获取活动通知(Callback形式)
- getAllActiveNotifications参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback<Array\<NotificationRequest\>> | 是 | 获取活动通知回调函数 |
- 返回值
void
- 示例
```js
function getAllActiveNotificationsCallback(err, data) {
console.info("==========================>getAllActiveNotificationsCallback=======================>");
}
Notification.getAllActiveNotifications(getAllActiveNotificationsCallback);
```
## Notification.getAllActiveNotifications()
- 接口说明
获取活动通知(Promise形式)
- getAllActiveNotifications参数描述
- 返回值
Promise\<Array\<NotificationRequest\>\>
- 示例
```js
Notification.getAllActiveNotifications().then((data) => {
console.info("==========================>getAllActiveNotificationsCallback=======================>");
});
```
## Notification.getActiveNotificationCount(callback: AsyncCallback\<number\>)
- 接口说明
获取当前应用的活动通知数(Callback形式)
- getActiveNotificationCount参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ---------------------- |
| callback | 只读 | AsyncCallback\<number\> | 是 | 获取活动通知数回调函数 |
- 返回值
void
- 示例
```js
function getActiveNotificationCountCallback(err, data) {
console.info("==========================>getActiveNotificationCountCallback=======================>");
}
Notification.getActiveNotificationCount(getActiveNotificationCountCallback);
```
## Notification.getActiveNotificationCount()
- 接口说明
获取当前应用的活动通知数(Promise形式)
- getActiveNotificationCount参数描述
- 返回值
返回值为Promise\<number\>
- 示例
```js
Notification.getActiveNotificationCount().then((data) => {
console.info("==========================>getActiveNotificationCountCallback=======================>");
});
```
## Notification.getActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
- 接口说明
获取当前应用的活动通知(Callback形式)
- getActiveNotifications参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------------------- | ---- | ------------------------------ |
| callback | 只读 | AsyncCallback<Array\<NotificationRequest\>> | 是 | 获取当前应用的活动通知回调函数 |
- 返回值
void
- 示例
```js
function getActiveNotificationsCallback(err, data) {
console.info("==========================>getActiveNotificationsCallback=======================>");
}
Notification.getActiveNotifications(getActiveNotificationsCallback);
```
## Notification.getActiveNotifications()
- 接口说明
获取当前应用的活动通知(Promise形式)
- getActiveNotifications参数描述
- 返回值
Promise\<Array\<NotificationRequest\>\>
- 示例
```js
Notification.getActiveNotifications().then((data) => {
console.info("==========================>getActiveNotificationsCallback=======================>");
});
```
## Notification.cancelGroup(groupName: string, callback: AsyncCallback\<void\>)
- 接口说明
取消本应用指定组通知(Callback形式)
- cancelGroup参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ---------------------------- |
| groupName | 只读 | string | 是 | 指定通知组名称 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 取消本应用指定组通知回调函数 |
- 返回值
void
- 示例
```js
function cancelGroupCallback(err) {
console.info("==========================>cancelGroupCallback=======================>");
}
var groupName = "GroupName";
Notification.cancelGroup(groupName, cancelGroupCallback);
```
## Notification.cancelGroup(groupName: string)
- 接口说明
取消本应用指定组通知(Promise形式)
- cancelGroup参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------ | ---- | -------------- |
| groupName | 只读 | string | 是 | 指定通知组名称 |
- 返回值
Promise\<void\>
- 示例
```js
var groupName = "GroupName";
Notification.cancelGroup(groupName).then(() => {
console.info("==========================>cancelGroupPromise=======================>");
});
```
## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\<void\>)
- 接口说明
删除指定应用指定组通知(Callback形式)
- removeGroupByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ---------------------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| groupName | 只读 | string | 是 | 指定通知组名称 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 删除本应用指定组通知回调函数 |
- 返回值
void
- 示例
```js
function removeGroupByBundleCallback(err) {
console.info("==========================>removeGroupByBundleCallback=======================>");
}
var bundleOption = {bundle: "Bundle"};
var groupName = "GroupName";
Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCallback);
```
## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string)
- 接口说明
删除指定应用指定组通知(Promise形式)
- removeGroupByBundle参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------ | ---- | -------------- |
| bundle | 只读 | BundleOption | 是 | 指定包信息 |
| groupName | 只读 | string | 是 | 指定通知组名称 |
- 返回值
Promise\<void\>
- 示例
```js
var bundleOption = {bundle: "Bundle"};
var groupName = "GroupName";
Notification.removeGroupByBundle(bundleOption, groupName).then(() => {
console.info("==========================>removeGroupByBundlePromise=======================>");
});
```
## Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\<void\>)
- 接口说明
设置免打扰时间(Callback形式)
- setDoNotDisturbDate参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ---------------------- |
| date | 只读 | DoNotDisturbDate | 是 | 免打扰时间选项 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 设置免打扰时间回调函数 |
- 返回值
void
- 示例
```js
function setDoNotDisturbDateCallback(err) {
console.info("==========================>setDoNotDisturbDateCallback=======================>");
}
var doNotDisturbDate = {
type: notification.DoNotDisturbType.TYPE_ONCE,
begin: new Date(),
end: new Date(2021, 11, 15, 18, 0)
}
Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
```
## Notification.setDoNotDisturbDate(date: DoNotDisturbDate)
- 接口说明
设置免打扰时间接口(Promise形式)
- setDoNotDisturbDate参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ---------------- | ---- | -------------- |
| date | 只读 | DoNotDisturbDate | 是 | 免打扰时间选项 |
- 返回值
Promise\<void\>
- 示例
```js
var doNotDisturbDate = {
type: notification.DoNotDisturbType.TYPE_ONCE,
begin: new Date(),
end: new Date(2021, 11, 15, 18, 0)
}
Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => {
console.info("==========================>setDoNotDisturbDatePromise=======================>");
});
```
## Notification.getDoNotDisturbDate(callback: AsyncCallback\<DoNotDisturbDate\>)
- 接口说明
查询免打扰时间接口(Callback形式)
- getDoNotDisturbDate参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------------- | ---- | ---------------------- |
| callback | 只读 | AsyncCallback\<DoNotDisturbDate\> | 是 | 查询免打扰时间回调函数 |
- 返回值
void
- 示例
```js
function getDoNotDisturbDateCallback(err,data) {
console.info("==========================>getDoNotDisturbDateCallback=======================>");
}
Notification.getDoNotDisturbDate(getDoNotDisturbDateCallback);
```
## Notification.getDoNotDisturbDate()
- 接口说明
查询免打扰时间接口(Promise形式)
- getDoNotDisturbDate参数描述
- 返回值
Promise\<DoNotDisturbDate\>
- 示例
```js
Notification.getDoNotDisturbDate().then((data) => {
console.info("==========================>getDoNotDisturbDatePromise=======================>");
});
```
## Notification.supportDoNotDisturbMode(callback: AsyncCallback\<boolean\>)
- 接口说明
查询是否支持勿扰模式功能(Callback形式)
- supportDoNotDisturbMode参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------ | ---- | -------------------------------- |
| callback | 只读 | AsyncCallback\<boolean\> | 是 | 查询是否支持勿扰模式功能回调函数 |
- 返回值
void
- 示例
```js
function supportDoNotDisturbModeCallback(err,data) {
console.info("==========================>supportDoNotDisturbModeCallback=======================>");
}
Notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback);
```
## Notification.supportDoNotDisturbMode()
- 接口说明
查询是否支持勿扰模式功能(Promise形式)
- supportDoNotDisturbMode参数描述
- 返回值
Promise\<boolean\>
- 示例
```js
Notification.supportDoNotDisturbMode().then((data) => {
console.info("==========================>supportDoNotDisturbModePromise=======================>");
});
```
## WantAgent接口
## 导入模块
```js
import WantAgent from '@ohos.wantAgent';
```
## WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\<WantAgent\>)
- 接口说明
创建WantAgent(callback形式)
- getWantAgent参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------------- | ---- | ----------------------- |
| info | 只读 | WantAgentInfo | 是 | WantAgent信息 |
| callback | 只读 | AsyncCallback\<WantAgent\> | 是 | 创建WantAgent的回调方法 |
- WantAgentInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------------------------- | ---- | ---------------------- |
| wants | 读、写 | Array\<Want\> | 是 | 将被执行的动作列表 |
| operationType | 读、写 | wantAgent.OperationType | 是 | 动作类型 |
| requestCode | 读、写 | number | 是 | 使用者定义的一个私有值 |
| wantAgentFlags | 读、写 | Array<wantAgent.WantAgentFlags> | 否 | 动作执行属性 |
| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 |
-
WantAgentFlags类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ---- | ---- | ------------------------------------------------------------ |
| ONE_TIME_FLAG | 只读 | enum | 否 | WantAgent仅能使用一次 |
| NO_BUILD_FLAG | 只读 | enum | 否 | 如果描述WantAgent对象不存在,则不创建它,直接返回null |
| CANCEL_PRESENT_FLAG | 只读 | enum | 否 | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象 |
| UPDATE_PRESENT_FLAG | 只读 | enum | 否 | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据 |
| CONSTANT_FLAG | 只读 | enum | 否 | WantAgent是不可变的 |
- OperationType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------------- | -------- | ---- | ---- | ----------------------- |
| UNKNOWN_TYPE | 只读 | enum | 否 | 不识别的类型 |
| START_ABILITY | 只读 | enum | 否 | 开启一个有页面的Ability |
| START_ABILITIES | 只读 | enum | 否 | 开启多个有页面的Ability |
| START_SERVICE | 只读 | enum | 否 | 开启一个无页面的ability |
| SEND_COMMON_EVENT | 只读 | enum | 否 | 发送一个公共事件 |
- 返回值
void
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
```
## WantAgent.getWantAgent(info: WantAgentInfo): Promise\<WantAgent\>
- 接口说明
创建WantAgent(Promise形式)
- getWantAgent参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------------- | ---- | ------------- |
| info | 只读 | WantAgentInfo | 是 | WantAgent信息 |
- 返回值
Promise\<WantAgent\>
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
});
```
## WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\<string\>)
- 接口说明
获取WantAgent实例的包名(callback形式)
- getBundleName参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | --------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback\<string\> | 是 | 获取WantAgent实例的包名的回调方法 |
- 返回值
void
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getBundleName回调
function getBundleNameCallback(err, data) {
console.info("==========================>getBundleNameCallback=======================>");
}
WantAgent.getBundleName(wantAgent, getBundleNameCallback)
```
## WantAgent.getBundleName(agent: WantAgent): Promise\<string\>
- 接口说明
获取WantAgent实例的包名(Promise形式)
- getBundleName参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
- 返回值
Promise\<string\>
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
wantAgent = data;
});
WantAgent.getBundleName(wantAgent).then((data) => {
console.info("==========================>getBundleNameCallback=======================>");
});
```
## WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\<number\>)
- 接口说明
获取WantAgent实例的用户ID(callback形式)
- getUid参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | ----------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback\<number\> | 是 | 获取WantAgent实例的用户ID的回调方法 |
- 返回值
void
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getUid回调
function getUidCallback(err, data) {
console.info("==========================>getUidCallback=======================>");
}
WantAgent.getUid(wantAgent, getUidCallback)
```
## WantAgent.getUid(agent: WantAgent): Promise\<number\>
- 接口说明
获取WantAgent实例的用户ID(Promise形式)
- getUid参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
- 返回值
Promise\<number\>
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
wantAgent = data;
});
WantAgent.getUid(wantAgent).then((data) => {
console.info("==========================>getUidCallback=======================>");
});
```
## WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\<Want\>)
- 接口说明
获取WantAgent对象的want(callback形式)
- getWant参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback\<Want\> | 是 | 获取WantAgent对象want的回调方法 |
- 返回值
void
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentWantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getWant回调
function getWantCallback(err, data) {
console.info("==========================>getWantCallback=======================>");
}
WantAgent.getWant(wantAgent, getWantCallback)
```
## WantAgent.getWant(agent: WantAgent): Promise\<Want\>
- 接口说明
获取WantAgent对象的want(Promise形式)
- getWant参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
- 返回值
Promise\<Want\>
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
wantAgent = data;
});
WantAgent.getWant(wantAgent).then((data) => {
console.info("==========================>getWantCallback=======================>");
});
```
## WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\<void\>)
- 接口说明
取消WantAgent实例(callback形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | --------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 取消WantAgent实例的回调方法 |
- 返回值
void
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//cancel回调
function cancelCallback(err, data) {
console.info("==========================>cancelCallback=======================>");
}
WantAgent.cancel(wantAgent, cancelCallback)
```
## WantAgent.cancel(agent: WantAgent): Promise\<void\>
- 接口说明
取消WantAgent实例(Promise形式)
- cancel参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
- 返回值
Promise\<void\>
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
wantAgent = data;
});
WantAgent.cancel(wantAgent).then((data) => {
console.info("==========================>cancelCallback=======================>");
});
```
## WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\<CompleteData\>)
- 接口说明
主动激发WantAgent实例(callback形式)
- trigger参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ----------------------------- | ---- | ------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| triggerInfo | 只读 | TriggerInfo | 是 | TriggerInfo对象 |
| callback | 只读 | AsyncCallback\<CompleteData\> | 是 | 主动激发WantAgent实例的回调方法 |
- TriggerInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | -------------------- | ---- | ----------- |
| code | 读、写 | number | 是 | result code |
| want | 读、写 | Want | 否 | Want |
| permission | 读、写 | string | 否 | 权限定义 |
| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 |
- 返回值
void
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//trigger回调
function triggerCallback(err, data) {
console.info("==========================>triggerCallback=======================>");
}
var triggerInfo = {
code:0
}
WantAgent.trigger(wantAgent, triggerInfo, triggerCallback)
```
## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\<boolean\>)
- 接口说明
判断两个WantAgent实例是否相等(callback形式)
- equal参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------------------ | ---- | --------------------------------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 |
| callback | 只读 | AsyncCallback\<boolean\> | 是 | 判断两个WantAgent实例是否相等的回调方法 |
- 返回值
void
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent1;
var wantAgent2;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
wantAgent1 = data;
wantAgent2 = data;
} else {
console.info('----getWantAgent failed!----');
}
}
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//equal回调
function equalCallback(err, data) {
console.info("==========================>equalCallback=======================>");
}
WantAgent.equal(wantAgent1, wantAgent2, equalCallback)
```
## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\<boolean\>
- 接口说明
判断两个WantAgent实例是否相等(Promise形式)
- equal参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------- | ---- | ------------- |
| agent | 只读 | WantAgent | 是 | WantAgent对象 |
| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 |
- 返回值
Promise\<boolean\>
- 示例
```js
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var wantAgent1;
var wantAgent2;
//WantAgentInfo对象
var wantAgentInfo = {
wants: [
{
deviceId: "deviceId",
bundleName: "com.neu.setResultOnAbilityResultTest1",
abilityName: "com.example.test.MainAbility",
action: "action1",
entities: ["entity1"],
type: "MIMETYPE",
uri: "key={true,true,false}",
parameters:
{
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [false, true, false],
mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey6: true,
}
}
],
operationType: OperationType.START_ABILITIES,
requestCode: 0,
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
wantAgent1 = data;
wantAgent2 = data;
});
WantAgent.equal(wantAgent1, wantAgent2).then((data) => {
console.info("==========================>equalCallback=======================>");
});
```
####
# ParticleAbility模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| ParticleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.startAbility(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.terminateSelf(callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.terminateSelf() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.acquireDataAbilityHelper(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 使用限制
ParticleAbility模块的接口只能在Ability为Data和Service类型的时候进行调用
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
```
#### ParticleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<void>
- 接口说明
服务ability使用此方法启动特定ability(callback形式)
- startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ----------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 指示启动的ability |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
- StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
- flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
- 返回值
void
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
particleAbility.startAbility(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION;
deviceId: "",
bundleName: "com.example.Data",
abilityName: "com.jstest.startabilitytest5.MainAbility",
uri:""
},
},
)
```
#### ParticleAbility.startAbility(parameter: StartAbilityParameter)
- 接口说明
服务ability使用此方法启动特定ability((Promise形式)
- startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ----------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 指示启动的ability |
- StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
- flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
- 返回值
void
- 示例
```js
import featureAbility from '@ohos.ability.featureAbility'
import particleAbility from '@ohos.ability.particleAbility'
var windowMode = featureAbility.AbilityStartSetting.WINDOW_MODE_KEY;
particleAbility.startAbility(
want:
{
bundleName: "com.jstest.featureabilitytest",
abilityName: "com.jstest.startabilitytest1.MainAbility",
},
abilityStartSetting:
{
windowMode: featureAbility.AbilityWindowConfiguration.WINDOW_MODE_FLOATING,
},
}
).then((void) => {
console.info("==========================>startAbilityCallback=======================>");
});
```
#### ParticleAbility.terminateSelf(callback: AsyncCallback\<void>)
- 接口说明
摧毁服务ability(callback形式)
- terminateSelf参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
ParticleAbility.terminateSelf()
```
#### ParticleAbility.terminateSelf()
- 接口说明
摧毁服务ability(Promise形式)
- 返回值
void
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
particleAbility.terminateSelf().then((void) => {
console.info("==========================>terminateSelfCallback=======================>");
});
```
#### ParticleAbility.acquireDataAbilityHelper(uri: string)
- 接口说明
获取dataAbilityHelper
- acquireDataAbilityHelper参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| :--- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
- 返回值
返回dataAbilityHelper
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
var uri = "";
ParticleAbility.acquireDataAbilityHelper(uri)
```
#### ParticleAbility.connectAbility(*request*: Want, *options*:ConnectOptions): number
* 接口说明
将当前ability连接到指定ServiceAbility(callback形式)
* connectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------- | -------- | -------------- | ---- | -------------------------- |
| request | 只读 | Want | 是 | 表示被连接的ServiceAbility |
| options | 只读 | ConnectOptions | 是 | 被指定的回调方法 |
- ConnectOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| onConnect | 只读 | function | 是 | 连接成功时的回调函数 |
| onDisconnect | 只读 | function | 是 | 连接失败时的回调函数 |
| onFailed | 只读 | function | 是 | ConnectAbility调用失败时的回调函数 |
* 返回值
连接的ServiceAbilityID。
* 示例
```javascript
import particleAbility from '@ohos.ability.particleAbility'
var mRemote;
var connId;
function onConnectCallback(element, remote){
mRemote = remote;
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('particleAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = particleAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
```
#### ParticleAbility.disconnectAbility(connection: number, callback:AsyncCallback<void>): void
* 接口说明
断开与指定ServiceAbility的连接(callback形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
* 返回值
* 示例
```javascript
import particleAbility from '@ohos.ability.particleAbility'
var mRemote;
var connId;
function onConnectCallback(element, remote){
mRemote = remote;
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('particleAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = particleAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
var result = particleAbility.disconnectAbility(connId,
(error,data) => {
console.log('particleAbilityTest DisConnectJsSameBundleName result errCode : ' + error.code + " data: " + data)
},
);
```
#### ParticleAbility.disconnectAbility(connection: number): Promise<void>;
* 接口说明
断开与指定ServiceAbility的连接(promise形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
* 返回值
* 示例
```javascript
import particleAbility from '@ohos.ability.particleAbility'
var mRemote;
var connId;
function onConnectCallback(element, remote){
mRemote = remote;
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('particleAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = particleAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
var result = await particleAbility.disconnectAbility(connId);
```
# particleAbility模块
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| particleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<void>: void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.startAbility(parameter: StartAbilityParameter): Promise\<number> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.terminateSelf(callback: AsyncCallback\<void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.terminateSelf(): Promise\<void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.connectAbility(request: Want, options:ConnectOptions): number | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.disconnectAbility(connection: number, callback:AsyncCallback\<void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.disconnectAbility(connection: number): Promise\<void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
## 使用限制
particleAbility模块用来对Data和Service类型的Ability进行操作
## 导入模块
```js
import particleAbility from '@ohos.ability.particleAbility'
```
## particleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<void>: void
- 接口说明
使用此方法启动指定的particleAbility(callback形式)
- startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ----------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 指示启动的ability |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
- 返回值
void
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
particleAbility.startAbility(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION;
deviceId: "",
bundleName: "com.example.Data",
abilityName: "com.example.Data.MainAbility",
uri:""
},
},
(error, result) => {
console.log('particleAbility startAbility errCode:' + error + 'result:' + result)
},
)
```
## particleAbility.startAbility(parameter: StartAbilityParameter): Promise\<number>
- 接口说明
使用此方法启动指定的particleAbility(Promise形式)
- startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ----------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 指示启动的ability |
- 返回值
Promise\<void>
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
particleAbility.startAbility(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION;
deviceId: "",
bundleName: "com.example.Data",
abilityName: "com.example.Data.MainAbility",
uri:""
},
},
).then((void) => {
console.info("particleAbility startAbility");
});
```
## particleAbility.terminateSelf(callback: AsyncCallback\<void>): void
- 接口说明
终止particleAbility(callback形式)
- terminateSelf参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback\<void> | 是 | 表示被指定的回调方法 |
- 返回值
void
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
particleAbility.terminateSelf(
(error, result) => {
console.log('particleAbility terminateSelf errCode:' + error + 'result:' + result)
}
)
```
## particleAbility.terminateSelf(): Promise\<void>
- 接口说明
终止particleAbility(Promise形式)
- 返回值
Promise\<void>
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
particleAbility.terminateSelf().then((void) => {
console.info("particleAbility terminateSelf");
});
```
## particleAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper
- 接口说明
获取dataAbilityHelper
- acquireDataAbilityHelper参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| :--- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
- 返回值
| 类型 | 说明 |
| ----------------- | ------------------------------------------ |
| DataAbilityHelper | 用来协助其他Ability访问DataAbility的工具类 |
- 示例
```js
import particleAbility from '@ohos.ability.particleAbility'
var uri = "";
particleAbility.acquireDataAbilityHelper(uri)
```
## particleAbility.connectAbility(request: Want, options:ConnectOptions): number
* 接口说明
将当前ability连接到指定ServiceAbility(callback形式)
* connectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------- | -------- | -------------- | ---- | -------------------------- |
| request | 只读 | Want | 是 | 表示被连接的ServiceAbility |
| options | 只读 | ConnectOptions | 是 | 被指定的回调方法 |
- ConnectOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| onConnect | 只读 | function | 是 | 连接成功时的回调函数 |
| onDisconnect | 只读 | function | 是 | 断开连接时的回调函数 |
| onFailed | 只读 | function | 是 | ConnectAbility调用失败时的回调函数 |
* 返回值
标识一次连接。
* 示例
```javascript
import particleAbility from '@ohos.ability.particleAbility'
function onConnectCallback(element, remote){
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('particleAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = particleAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "com.ix.ServiceAbility.ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
```
## particleAbility.disconnectAbility(connection: number, callback:AsyncCallback\<void>): void
* 接口说明
断开与指定ServiceAbility的连接(callback形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
void
* 示例
```javascript
import particleAbility from '@ohos.ability.particleAbility'
function onConnectCallback(element, remote){
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('particleAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = particleAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "com.ix.ServiceAbility.ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
var result = particleAbility.disconnectAbility(connId,
(error,data) => {
console.log('particleAbilityTest DisConnectAbility result errCode : ' + error.code + " data: " + data)
},
);
```
## particleAbility.disconnectAbility(connection: number): Promise\<void>
* 接口说明
断开与指定ServiceAbility的连接(promise形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
* 返回值
Promise\<void>
* 示例
```javascript
import particleAbility from '@ohos.ability.particleAbility'
function onConnectCallback(element, remote){
console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy));
}
function onDisconnectCallback(element){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('particleAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = particleAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "com.ix.ServiceAbility.ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
var result = particleAbility.disconnectAbility(connId).then((void) => {
console.info("particleAbilityTest disconnectAbility");
});
```
## StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | --------------------- | ---- | ------------------------------------------------------------ |
| want | 只读 | [Want](#Want类型说明) | 是 | 表示需要包含有关目标启动能力的信息。 |
| abilityStartSetting | 只读 | {[key: string]: any} | 否 | 表示能力的特殊属性,当开发者启动能力时,该属性可以作为调用中的输入参数传递。 |
## Want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------------- | ---- | ------------------------------------------------------------ |
| deviceId | 只读 | string | 否 | 表示运行指定Ability的设备ID。 |
| bundleName | 只读 | string | 否 | 表示包描述。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| abilityName | 只读 | string | 否 | 表示待启动的Ability名称。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| uri | 只读 | string | 否 | 表示Uri描述。如果在Want中指定了Uri,则Want将匹配指定的Uri信息,包括scheme, schemeSpecificPart, authority和path信息。 |
| type | 只读 | string | 否 | 表示MIME type类型描述,比如:"text/plain" 、 "image/*"等。 |
| flags | 只读 | number | 否 | 表示处理Want的方式。默认传数字,具体参考:[flags说明](#flags说明)。 |
| action | 只读 | string | 否 | 表示action选项描述。 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示WantParams描述。 |
| entities | 只读 | Array\<string> | 否 | 表示entities相关描述。 |
## flags说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源能力 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示迁移是可拉回的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,使用后台模式安装该功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Want}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
## AbilityStartSetting类型说明
abilityStartSetting属性是一个定义为[key: string]: any的对象,key对应设定类型为:AbilityStartSetting枚举类型,value对应设定类型为:AbilityWindowConfiguration枚举类型。
使用时通过featureAbility.AbilityStartSetting获取,示例:featureAbility.AbilityStartSetting.BOUNDS_KEY。
| 名称 | 参数 | 描述 |
| --------------- | --------------- | -------------------------- |
| BOUNDS_KEY | "abilityBounds" | 窗口显示大小属性的名称。 |
| WINDOW_MODE_KEY | "windowMode" | 窗口显示模式属性的名称。 |
| DISPLAY_ID_KEY | "displayId" | 窗口显示设备ID属性的名称。 |
## AbilityWindowConfiguration类型说明
使用时通过featureAbility.AbilityWindowConfiguration获取,示例:featureAbility.AbilityWindowConfiguration.WINDOW_MODE_UNDEFINED。
| 名称 | 参数 | 描述 |
| --------------------------- | ---- | ---------- |
| WINDOW_MODE_UNDEFINED | 0 | 未定义。 |
| WINDOW_MODE_FULLSCREEN | 1 | 全屏。 |
| WINDOW_MODE_SPLIT_PRIMARY | 100 | 分屏主屏。 |
| WINDOW_MODE_SPLIT_SECONDARY | 101 | 分屏次屏。 |
| WINDOW_MODE_FLOATING | 102 | 悬浮窗。 |
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册