提交 ba3112c1 编写于 作者: X xuchenghua09

Update js-apis

Signed-off-by: Nxuchenghua09 <xuchenghua09@huawei.com>
上级 0a6d3fe9
# 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接口)
#### 支持设备
| 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.getWant(callback: AsyncCallback\<Want>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getContext() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf(callback: AsyncCallback\<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.continueAbility(options: ContinueAbilityOptions, callback: AsyncCallback<void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 使用限制
FeatureAbility模块的接口只能在Page类型的Ability调用
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
```
#### FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>)
* 接口说明
启动新的ability(callback形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| 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 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
* 返回值
void
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.startAbility(
{
want:
{
action: "",
entities: [""],
type: "",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.startability",
abilityName: "com.example.startability.MainAbility",
uri: ""
},
},
);
)
```
#### FeatureAbility.startAbility(parameter: StartAbilityParameter)
* 接口说明
启动新的ability(Promise形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
- StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
- want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 表示被启动的PageAbility的设备id,缺省表示启动本地的PageAbility |
| 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
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.startAbility(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: deviceId,
bundleName: "com.example.startability",
abilityName: "com.example.startability.MainAbility",
uri: ""
},
}
).then((void) => {
console.info("==========================>startAbility=======================>");
});
```
#### FeatureAbility.acquireDataAbilityHelper(uri: string)
* 接口说明
获取dataAbilityHelper
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
* 返回值
返回dataAbilityHelper
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.acquireDataAbilityHelper(
"dataability:///com.exmaple.DataAbility"
)
```
#### FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>)
* 接口说明
启动一个ability,并在该ability被销毁时返回执行结果(callback形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ---------------------- | ---- | ------------------- |
| 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 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
* 返回值
返回{@link AbilityResult}
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.startAbilityForResult(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.startabilityforresulttest1.MainAbility",
uri:""
},
},
)
```
#### FeatureAbility.startAbilityForResult(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 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
* 返回值
返回{@link AbilityResult}
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.startAbilityForResult(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.startabilityforresulttest2.MainAbility",
uri:"",
parameters:
{
mykey0: 1111,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "xxxxxxxxxxxxxxxxxxxxxx",
mykey4: [1, 15],
mykey5: [false, true, false],
mykey6: ["aaaaaa", "bbbbb", "ccccccccccc"],
mykey7: true,
},
},
requestCode: 2,
},
).then((void) => {
console.info("==========================>startAbilityForResult=======================>");
});
```
#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>)
* 接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(callback形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------- | ---- | ------------------- |
| 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 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
* 返回值
void
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.terminateSelfWithResult(
{
resultCode: 1,
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.finishwithresulttest1.MainAbility",
uri:"",
parameters: {
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [1, 15],
mykey5: [false, true, false],
mykey6: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey7: true,
}
},
},
);
```
#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult)
* 接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(Promise形式)
* 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 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
* 返回值
void
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.terminateSelfWithResult(
{
resultCode: 1,
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.finishwithresulttest1.MainAbility",
uri:"",
parameters: {
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [1, 15],
mykey5: [false, true, false],
mykey6: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey7: true,
}
},
}
).then((void) => {
console.info("==========================>terminateSelfWithResult=======================>");
});
```
#### FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>)
* 接口说明
检查ability的主窗口是否具有窗口焦点(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback\<boolean> | 是 | 被指定的回调方法 |
* 返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.hasWindowFocus()
```
#### FeatureAbility.hasWindowFocus()
* 接口说明
检查ability的主窗口是否具有窗口焦点(Promise形式)
* 参数描述
Null
* 返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.hasWindowFocus().then((void) => {
console.info("==========================>hasWindowFocus=======================>");
});
```
#### FeatureAbility.getWant(callback: AsyncCallback\<Want>)
* 接口说明
获取从ability发送的want(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback\<Want> | 是 | 被指定的回调方法 |
* 返回值
void
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.getWant()
```
#### FeatureAbility.getWant()
* 接口说明
获取从ability发送的want(Promise形式)
* 参数描述
Null
* 返回值
void
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.getWant().then((void) => {
console.info("==========================>getWantCallBack=======================>");
});
```
#### FeatureAbility.getContext()
* 接口说明
获取应用程序上下文
* 返回值
返回应用程序上下文
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
var context = featureAbility.getContext()
context.getBundleName()
```
#### FeatureAbility.terminateSelf(callback: AsyncCallback\<void>)
* 接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
void
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.terminateSelf()
```
#### FeatureAbility.terminateSelf()
* 接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(Promise形式)
* 参数描述
Null
* 返回值
* void
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.terminateSelf().then((void) => { console.info("==========================>terminateSelfCallBack=======================>");
});
```
#### FeatureAbility.connectAbility(*request*: Want, *options*:ConnectOptions): number
* 接口说明
将当前ability连接到指定ServiceAbility(callback形式)
* connectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------- | -------- | -------------- | ---- | -------------------------- |
| request | 只读 | Want | 是 | 表示被连接的ServiceAbility |
| options | 只读 | ConnectOptions | 是 | 被指定的回调方法 |
* Want参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| deviceId | 只读 | string | 否 | 表示被连接的ServiceAbility的设备id,缺省表示连接本地的ServiceAbility |
| bundleName | 只读 | string | 是 | 表示被连接的ServiceAbility的包名 |
| abilityName | 只读 | string | 是 | 表示被连接的ServiceAbility的类名 |
- ConnectOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| onConnect | 只读 | function | 是 | 连接成功时的回调函数 |
| onDisconnect | 只读 | function | 是 | 连接失败时的回调函数 |
| onFailed | 只读 | function | 是 | ConnectAbility调用失败时的回调函数 |
* 返回值
连接的ServiceAbilityID。
* 示例
```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){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('featureAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = featureAbility.connectAbility(
{
deviceId: deviceId,
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
```
#### FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback<void>): void
* 接口说明
断开与指定ServiceAbility的连接(callback形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
* 返回值
* 示例
```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){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('featureAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = featureAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
var result = featureAbility.disconnectAbility(connId,
(error,data) => {
console.log('featureAbilityTest DisConnectJsSameBundleName result errCode : ' + error.code + " data: " + data)
},
);
```
#### FeatureAbility.disconnectAbility(connection: number): Promise<void>;
* 接口说明
断开与指定ServiceAbility的连接(promise形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
* 返回值
* 示例
```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){
console.log('ConnectAbility onDisconnect element.deviceId : ' + element.deviceId)
}
function onFailedCallback(code){
console.log('featureAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = featureAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
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
```
# FeatureAbility模块
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| 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(): 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> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
## 使用限制
FeatureAbility模块的接口只能在Page类型的Ability调用
## 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
```
## FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>): void
* 接口说明
启动新的ability(callback形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<number> | 是 | 被指定的回调方法 |
- 返回值
- 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.startAbility(
{
want:
{
action: "",
entities: [""],
type: "",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.startability",
abilityName: "com.example.startability.MainAbility",
uri: ""
},
},
);
)
```
## FeatureAbility.startAbility(parameter: StartAbilityParameter): Promise\<number>
* 接口说明
启动新的ability(Promise形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
- 返回值
- 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.startAbility(
{
want:
{
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: deviceId,
bundleName: "com.example.startability",
abilityName: "com.example.startability.MainAbility",
uri: ""
},
}
).then((void) => {
console.info("==========================>startAbility=======================>");
});
```
## FeatureAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper
* 接口说明
获取dataAbilityHelper
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
* 返回值
| 类型 | 说明 |
| ----------------- | ------------------------------------------ |
| DataAbilityHelper | 用来协助其他Ability访问DataAbility的工具类 |
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.acquireDataAbilityHelper(
"dataability:///com.exmaple.DataAbility"
)
```
## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>): void
* 接口说明
启动一个ability,并在该ability被销毁时返回执行结果(callback形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ---------------------- | ---- | ------------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<[AbilityResult](#AbilityResult类型说明)> | 是 | 被指定的回调方法 |
* 返回值
[AbilityResult](#AbilityResult类型说明)
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.startAbilityForResult(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:""
},
},
)
```
## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter): Promise\<AbilityResult>
* 接口说明
启动一个ability,并在该ability被销毁时返回执行结果(Promise形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- |
| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability |
* 返回值
[AbilityResult](#AbilityResult类型说明)
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.startAbilityForResult(
{
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:"",
parameters:
{
mykey0: 1111,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "xxxxxxxxxxxxxxxxxxxxxx",
mykey4: [1, 15],
mykey5: [false, true, false],
mykey6: ["aaaaaa", "bbbbb", "ccccccccccc"],
mykey7: true,
},
},
requestCode: 2,
},
).then((void) => {
console.info("==========================>startAbilityForResult=======================>");
});
```
## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>): void
* 接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(callback形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------- | ---- | ------------------- |
| parameter | 只读 | [AbilityResult](#AbilityResult类型说明) | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
featureAbility.terminateSelfWithResult(
{
resultCode: 1,
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:"",
parameters: {
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [1, 15],
mykey5: [false, true, false],
mykey6: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey7: true,
}
},
},
);
```
## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult): Promise\<void>
* 接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(Promise形式)
* startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------------------------- | ---- | ------------------- |
| parameter | 只读 | [AbilityResult](#AbilityResult类型说明) | 是 | 表示被启动的Ability |
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.terminateSelfWithResult(
{
resultCode: 1,
want:
{
action: "action.system.home",
entities: ["entity.system.home"],
type: "MIMETYPE",
flags: FLAG_AUTH_READ_URI_PERMISSION,
deviceId: "",
bundleName: "com.example.featureabilitytest",
abilityName: "com.example.featureabilitytest.MainAbility",
uri:"",
parameters: {
mykey0: 2222,
mykey1: [1, 2, 3],
mykey2: "[1, 2, 3]",
mykey3: "ssssssssssssssssssssssssss",
mykey4: [1, 15],
mykey5: [false, true, false],
mykey6: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
mykey7: true,
}
},
}
).then((void) => {
console.info("==========================>terminateSelfWithResult=======================>");
});
```
## FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>): void
* 接口说明
检查ability的主窗口是否具有窗口焦点(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback\<boolean> | 是 | 被指定的回调方法 |
* 返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.hasWindowFocus()
```
## FeatureAbility.hasWindowFocus(): Promise\<boolean>
* 接口说明
检查ability的主窗口是否具有窗口焦点(Promise形式)
* 参数描述
* 返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.hasWindowFocus().then((void) => {
console.info("==========================>hasWindowFocus=======================>");
});
```
## FeatureAbility.getWant(callback: AsyncCallback\<Want>)
* 接口说明
获取从ability发送的want(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback\<Want> | 是 | 被指定的回调方法 |
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.getWant()
```
## FeatureAbility.getWant(): void
* 接口说明
获取从ability发送的want(Promise形式)
* 参数描述
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.getWant().then((void) => {
console.info("==========================>getWantCallBack=======================>");
});
```
## FeatureAbility.getContext(): Context
* 接口说明
获取应用程序上下文
* 返回值
返回应用程序上下文
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
var context = featureAbility.getContext()
context.getBundleName()
```
## FeatureAbility.terminateSelf(callback: AsyncCallback\<void>): void
* 接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(callback形式)
* 参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.terminateSelf()
```
## FeatureAbility.terminateSelf(): Promise\<void>
* 接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(Promise形式)
* 参数描述
Null
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureability';
featureAbility.terminateSelf().then((void) => { console.info("==========================>terminateSelfCallBack=======================>");
});
```
## FeatureAbility.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 featureAbility from '@ohos.ability.featureAbility'
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('featureAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = featureAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
```
## FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback\<void>): void
* 接口说明
断开与指定ServiceAbility的连接(callback形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback\<void> | 是 | 被指定的回调方法 |
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
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('featureAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = featureAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
var result = featureAbility.disconnectAbility(connId,
(error,data) => {
console.log('featureAbilityTest DisConnectJsSameBundleName result errCode : ' + error.code + " data: " + data)
},
);
```
## FeatureAbility.disconnectAbility(connection: number): Promise\<void>
* 接口说明
断开与指定ServiceAbility的连接(promise形式)
* disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
* 返回值
* 示例
```javascript
import featureAbility from '@ohos.ability.featureAbility'
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('featureAbilityTest ConnectAbility onFailed errCode : ' + code)
}
var connId = featureAbility.connectAbility(
{
bundleName: "com.ix.ServiceAbility",
abilityName: "ServiceAbilityA",
},
{
onConnect: onConnectCallback,
onDisconnect: onDisconnectCallback,
onFailed: onFailedCallback,
},
);
var result = await featureAbility.disconnectAbility(connId);
```
## 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 | 悬浮窗。 |
\ No newline at end of file
# Notification模块(JS端SDK接口)
# Notification模块
#### 支持设备
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- |
......@@ -83,19 +83,19 @@
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\<boolean\>) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\<boolean\> | 支持 | 支持 | 支持 | 支持 |
#### 权限列表
## 权限列表
#### 通知接口
## 通知接口
#### 导入模块
## 导入模块
```js
import notify from '@ohos.notification';
import Notification from '@ohos.notification';
```
#### Notification.publish(request: NotificationRequest, callback: AsyncCallback\<void\>)
## Notification.publish(request: NotificationRequest, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -144,12 +144,13 @@ import notify from '@ohos.notification';
NotificationContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ---------------------------- | ---- | -------------- |
| contentType | 读、写 | ContentType | 是 | 通知内容类型 |
| normal | 读、写 | NotificationBasicContent | 否 | 通知基本内容 |
| longText | 读、写 | NotificationLongTextContent | 否 | 通知长文本内容 |
| multiLine | 读、写 | NotificationMultiLineContent | 否 | 通知多行内容 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ---------------------------- | ---- | ------------------ |
| contentType | 读、写 | ContentType | 是 | 通知内容类型 |
| normal | 读、写 | NotificationBasicContent | 否 | 基本类型通知内容 |
| longText | 读、写 | NotificationLongTextContent | 否 | 长文本类型通知内容 |
| multiLine | 读、写 | NotificationMultiLineContent | 否 | 多行类型通知内容 |
| picture | 读、写 | NotificationPictureContent | 否 | 图片类型通知内容 |
- ContentType类型说明
......@@ -202,6 +203,15 @@ NotificationContent类型说明
| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 |
| picture | 读、写 | image.PixelMap | 是 | 通知的图片内容 |
- SlotType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------------- | -------- | -------- | ---- | -------- |
| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 |
| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 |
| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 |
| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 |
- NotificationActionButton类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
......@@ -247,7 +257,7 @@ Notification.publish(notificationRequest, publishCallback)
#### Notification.publish(request: NotificationRequest)
## Notification.publish(request: NotificationRequest)
- 接口说明
......@@ -280,7 +290,7 @@ Notification.publish(notificationRequest).then((void) => {
#### Notification.cancel(id: number, label: string, callback: AsyncCallback\<void\>)
## Notification.cancel(id: number, label: string, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -291,7 +301,7 @@ Notification.publish(notificationRequest).then((void) => {
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| id | 只读 | number | 是 | 通知ID |
| lable | 只读 | string | 是 | 通知标签 |
| label | 只读 | string | 是 | 通知标签 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
......@@ -310,7 +320,7 @@ Notification.cancel(0, "label", cancelCallback)
#### Notification.cancel(id:number, label?:string)
## Notification.cancel(id:number, label?:string)
- 接口说明
......@@ -321,7 +331,7 @@ Notification.cancel(0, "label", cancelCallback)
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------ | ---- | -------- |
| id | 只读 | number | 是 | 通知ID |
| lable | 只读 | string | 是 | 通知标签 |
| label | 只读 | string | 否 | 通知标签 |
- 返回值
......@@ -337,7 +347,7 @@ Notification.cancel(0).then((void) => {
#### Notification.cancel(id: number, callback: AsyncCallback\<void\>)
## Notification.cancel(id: number, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -366,7 +376,7 @@ Notification.cancel(0, cancelCallback)
#### Notification.cancelAll(callback: AsyncCallback\<void\>)
## Notification.cancelAll(callback: AsyncCallback\<void\>)
- 接口说明
......@@ -394,11 +404,11 @@ Notification.cancelAll(cancelCallback)
#### Notification.cancelAll()
## Notification.cancelAll()
- 接口说明
取消所有已发布的通知(callback形式)
取消所有已发布的通知(Promise形式)
- 参数描述
......@@ -406,7 +416,7 @@ Notification.cancelAll(cancelCallback)
- 返回值
void
Promise\<void\>
- 示例
......@@ -418,7 +428,7 @@ Notification.cancelAll().then((void) => {
#### Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\<void\>)
## Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -426,10 +436,10 @@ Notification.cancelAll().then((void) => {
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | ------------------------------------------ |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道,由{NotificationSlot}设置 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道对象 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- NotificationSlot类型说明
......@@ -460,14 +470,14 @@ function addSlotCallBack(err) {
}
//通知slot对象
var notificationSlot = {
type:SOCIAL_COMMUNICATION
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.addSlot(notificationSlot, addSlotCallBack)
```
#### Notification.addSlot(slot: NotificationSlot)
## Notification.addSlot(slot: NotificationSlot)
- 接口说明
......@@ -475,9 +485,9 @@ Notification.addSlot(notificationSlot, addSlotCallBack)
- addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ---------------- | ---- | ------------------------------------------ |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道,由{NotificationSlot}设置 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ---------------- | ---- | -------------------- |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道对象 |
- 返回值
......@@ -487,10 +497,9 @@ Notification.addSlot(notificationSlot, addSlotCallBack)
```js
//通知slot对象
var notificationSlot = {
notificationId: 0,
type:SOCIAL_COMMUNICATION
}
var notificationSlot = {
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.addSlot(notificationSlot).then((void) => {
console.info("==========================>addSlotCallback=======================>");
});
......@@ -498,7 +507,7 @@ Notification.addSlot(notificationSlot).then((void) => {
#### Notification.addSlot(type: SlotType, callback: AsyncCallback\<void\>)
## Notification.addSlot(type: SlotType, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -511,15 +520,6 @@ Notification.addSlot(notificationSlot).then((void) => {
| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- SlotType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------------- | -------- | -------- | ---- | -------- |
| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 |
| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 |
| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 |
| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 |
- 返回值
void
......@@ -531,12 +531,12 @@ Notification.addSlot(notificationSlot).then((void) => {
function addSlotCallBack(err) {
console.info("==========================>addSlotCallBack=======================>");
}
Notification.addSlot(SOCIAL_COMMUNICATION, addSlotCallBack)
Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION, addSlotCallBack)
```
#### Notification.addSlot(type: SlotType)
## Notification.addSlot(type: SlotType)
- 接口说明
......@@ -555,14 +555,14 @@ Notification.addSlot(SOCIAL_COMMUNICATION, addSlotCallBack)
- 示例
```js
Notification.addSlot(SOCIAL_COMMUNICATION).then((void) => {
Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION).then((void) => {
console.info("==========================>addSlotCallback=======================>");
});
```
#### Notification.addSlots(slots: Array\<NotificationSlot\>, callback: AsyncCallback\<void\>)
## Notification.addSlots(slots: Array\<NotificationSlot\>, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -570,10 +570,10 @@ Notification.addSlot(SOCIAL_COMMUNICATION).then((void) => {
- addSlots数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------- | ---- | ------------------------------------------ |
| slots | 只读 | Array\<NotificationSlot\> | 是 | 要创建的通知通道,由{NotificationSlot}设置 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------- | ---- | ------------------------ |
| slots | 只读 | Array\<NotificationSlot\> | 是 | 要创建的通知通道对象数组 |
| callback | 只读 | AsyncCallback\<void\> | 是 | 表示被指定的回调方法 |
- 返回值
......@@ -588,8 +588,7 @@ function addSlotsCallBack(err) {
}
//通知slot对象
var notificationSlot = {
notificationId: 0,
type:SOCIAL_COMMUNICATION
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
//通知slot array 对象
var notificationSlotArray = new Array();
......@@ -600,7 +599,7 @@ Notification.addSlots(notificationSlotArray, addSlotsCallBack)
#### Notification.addSlots(slots: Array\<NotificationSlot\>)
## Notification.addSlots(slots: Array\<NotificationSlot\>)
- 接口说明
......@@ -608,9 +607,9 @@ Notification.addSlots(notificationSlotArray, addSlotsCallBack)
- addSlots数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------------------------- | ---- | ------------------------------------------ |
| slots | 只读 | Array\<NotificationSlot\> | 是 | 要创建的通知通道,由{NotificationSlot}设置 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------------------------- | ---- | ------------------------ |
| slots | 只读 | Array\<NotificationSlot\> | 是 | 要创建的通知通道对象数组 |
- 返回值
......@@ -621,8 +620,7 @@ Notification.addSlots(notificationSlotArray, addSlotsCallBack)
```js
//通知slot对象
var notificationSlot = {
notificationId: 0,
type:SOCIAL_COMMUNICATION
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
//通知slot array 对象
var notificationSlotArray = new Array();
......@@ -635,7 +633,7 @@ Notification.addSlots(notificationSlotArray).then((void) => {
#### Notification.getSlot(slotType: SlotType, callback: AsyncCallback\<NotificationSlot\>)
## Notification.getSlot(slotType: SlotType, callback: AsyncCallback\<NotificationSlot\>)
- 接口说明
......@@ -659,13 +657,13 @@ Notification.addSlots(notificationSlotArray).then((void) => {
function getSlotCallback(err,data) {
console.info("==========================>getSlotCallback=======================>");
}
var slotType = SOCIAL_COMMUNICATION;
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.getSlot(slotType, getSlotCallback)
```
#### Notification.getSlot(slotType)
## Notification.getSlot(slotType)
- 接口说明
......@@ -684,14 +682,15 @@ Notification.getSlot(slotType, getSlotCallback)
- 示例
```js
var slotType = SOCIAL_COMMUNICATION;
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.getSlot(slotType).then((data) => {
console.info("==========================>getSlotCallback=======================>");
});
```
#### Notification.getSlots(callback: AsyncCallback<Array\<NotificationSlot\>>)
## Notification.getSlots(callback: AsyncCallback<Array\<NotificationSlot\>>)
- 接口说明
......@@ -719,7 +718,7 @@ Notification.getSlots(getSlotsCallback)
#### Notification.getSlots()
## Notification.getSlots()
- 接口说明
......@@ -738,11 +737,12 @@ Notification.getSlots(getSlotsCallback)
```js
Notification.getSlots().then((data) => {
console.info("==========================>getSlotsCallback=======================>");
});
```
#### Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\<void\>)
## Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -766,13 +766,13 @@ Notification.getSlots().then((data) => {
function removeSlotCallback(err) {
console.info("==========================>removeSlotCallback=======================>");
}
var slotType = SOCIAL_COMMUNICATION;
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType,removeSlotCallback)
```
#### Notification.removeSlot(slotType: SlotType)
## Notification.removeSlot(slotType: SlotType)
- 接口说明
......@@ -791,14 +791,15 @@ Notification.removeSlot(slotType,removeSlotCallback)
- 示例
```js
var slotType = SOCIAL_COMMUNICATION;
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType).then((void) => {
console.info("==========================>removeSlotCallback=======================>");
});
```
#### Notification.removeAllSlots(callback: AsyncCallback\<void\>)
## Notification.removeAllSlots(callback: AsyncCallback\<void\>)
- 接口说明
......@@ -825,7 +826,7 @@ Notification.removeAllSlots(removeAllCallBack)
#### Notification.removeAllSlots()
## Notification.removeAllSlots()
- 接口说明
......@@ -849,7 +850,7 @@ Notification.removeAllSlots().then((void) => {
#### Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\<void\>)
## Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -873,7 +874,6 @@ Notification.removeAllSlots().then((void) => {
| onConnect?:() | 读、写 | function | 否 | 注册订阅回调函数 |
| onDisconnect?:() | 读、写 | function | 否 | 取消订阅回调函数 |
| onDestroy?:() | 读、写 | function | 否 | 服务失联回调函数 |
| onDisturbModeChange?:(mode: notification.DoNotDisturbMode) | 读、写 | function | 否 | 免打扰模式变更回调函数 |
| onDoNotDisturbDateChange?:(mode: notification.DoNotDisturbDate) | 读、写 | function | 否 | 免打扰时间选项变更回调函数 |
- SubscribeCallbackData 类型说明
......@@ -901,15 +901,6 @@ Notification.removeAllSlots().then((void) => {
| hashCode | 只读 | string | 是 | 通知唯一标识 |
| ranking | 只读 | number | 是 | 通知排序序号 |
- DoNotDisturbMode类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ---------------- | ---- | ---------------------------- |
| ALLOW_ALL | 只读 | DoNotDisturbMode | 否 | 全部绕过免打扰 |
| ALLOW_PRIORITY | 只读 | DoNotDisturbMode | 否 | 指定优先级通知可以绕过免打扰 |
| ALLOW_NONE | 只读 | DoNotDisturbMode | 否 | 全部免打扰 |
| ALLOW_ALARMS | 只读 | DoNotDisturbMode | 否 | 闹钟类型通知可以绕过免打扰 |
- DoNotDisturbType类型说明
......@@ -950,17 +941,17 @@ function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume:onConsumeCallback;
onConsume: onConsumeCallback
}
var info = {
bundleNames:["bundleName1","bundleName2"]
bundleNames: ["bundleName1","bundleName2"]
}
Notification.subscribe(subscriber, info, subscribeCallback);
```
#### Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
## Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -987,14 +978,14 @@ function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume:onConsumeCallback;
onConsume: onConsumeCallback
}
Notification.subscribe(subscriber, subscribeCallback);
```
#### Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo)
## Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo)
- 接口说明
......@@ -1018,7 +1009,7 @@ function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume:onConsumeCallback;
onConsume: onConsumeCallback
};
Notification.subscribe(subscriber).then((void) => {
console.info("==========================>subscribeCallback=======================>");
......@@ -1027,7 +1018,7 @@ Notification.subscribe(subscriber).then((void) => {
#### Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
## Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1054,14 +1045,14 @@ function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume:onConsumeCallback;
onConsume: onConsumeCallback
}
Notification.unsubscribe(subscriber, unsubscribeCallback);
```
#### Notification.unsubscribe(subscriber: NotificationSubscriber)
## Notification.unsubscribe(subscriber: NotificationSubscriber)
- 接口说明
......@@ -1084,7 +1075,7 @@ function onConsumeCallback(err, data) {
console.info("==========================>onConsumeCallback=======================>");
}
var subscriber = {
onConsume:onConsumeCallback;
onConsume: onConsumeCallback
};
Notification.unsubscribe(subscriber).then((void) => {
console.info("==========================>unsubscribeCallback=======================>");
......@@ -1093,7 +1084,7 @@ Notification.unsubscribe(subscriber).then((void) => {
#### Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
## Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1124,14 +1115,14 @@ function enableNotificationCallback(err) {
console.info("==========================>enableNotificationCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.enableNotification(bundle, false, enableNotificationCallback);
```
#### Notification.enableNotification(bundle: BundleOption, enable: boolean)
## Notification.enableNotification(bundle: BundleOption, enable: boolean)
- 接口说明
......@@ -1152,7 +1143,7 @@ Notification.enableNotification(bundle, false, enableNotificationCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.enableNotification(bundle, false).then((void) => {
console.info("==========================>enableNotificationCallback=======================>");
......@@ -1161,7 +1152,7 @@ Notification.enableNotification(bundle, false).then((void) => {
#### Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
## Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
- 接口说明
......@@ -1185,14 +1176,14 @@ function isNotificationEnabledCallback(err, data) {
console.info("==========================>isNotificationEnabledCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.isNotificationEnabled(bundle, isNotificationEnabledCallback);
```
#### Notification.isNotificationEnabled(bundle: BundleOption)
## Notification.isNotificationEnabled(bundle: BundleOption)
- 接口说明
......@@ -1212,7 +1203,7 @@ Notification.isNotificationEnabled(bundle, isNotificationEnabledCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.isNotificationEnabled(bundle).then((data) => {
console.info("==========================>isNotificationEnabledCallback=======================>");
......@@ -1221,7 +1212,7 @@ Notification.isNotificationEnabled(bundle).then((data) => {
#### Notification.isNotificationEnabled(callback: AsyncCallback\<boolean\>)
## Notification.isNotificationEnabled(callback: AsyncCallback\<boolean\>)
- 接口说明
......@@ -1249,7 +1240,7 @@ Notification.isNotificationEnabled(isNotificationEnabledCallback);
#### Notification.isNotificationEnabled()
## Notification.isNotificationEnabled()
- 接口说明
......@@ -1275,7 +1266,7 @@ Notification.isNotificationEnabled().then((data) => {
#### Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
## Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1300,14 +1291,14 @@ function displayBadgeCallback(err) {
console.info("==========================>displayBadgeCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.displayBadge(bundle, false, displayBadgeCallback);
```
#### Notification.displayBadge(bundle: BundleOption, enable: boolean)
## Notification.displayBadge(bundle: BundleOption, enable: boolean)
- 接口说明
......@@ -1328,7 +1319,7 @@ Notification.displayBadge(bundle, false, displayBadgeCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.displayBadge(bundle, false).then((void) => {
console.info("==========================>displayBadgeCallback=======================>");
......@@ -1337,7 +1328,7 @@ Notification.displayBadge(bundle, false).then((void) => {
#### Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
## Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
- 接口说明
......@@ -1361,14 +1352,14 @@ function isBadgeDisplayedCallback(err, data) {
console.info("==========================>isBadgeDisplayedCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.isBadgeDisplayed(bundle, isBadgeDisplayedCallback);
```
#### Notification.isBadgeDisplayed(bundle: BundleOption)
## Notification.isBadgeDisplayed(bundle: BundleOption)
- 接口说明
......@@ -1388,7 +1379,7 @@ Notification.isBadgeDisplayed(bundle, isBadgeDisplayedCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.isBadgeDisplayed(bundle).then((data) => {
console.info("==========================>isBadgeDisplayedCallback=======================>");
......@@ -1397,7 +1388,7 @@ Notification.isBadgeDisplayed(bundle).then((data) => {
#### Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\<void\>)
## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1422,17 +1413,17 @@ function setSlotByBundleCallback(err) {
console.info("==========================>setSlotByBundleCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
var notificationSlot = {
type:SOCIAL_COMMUNICATION
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.setSlotByBundle(bundle, notificationSlot, setSlotByBundleCallback);
```
#### Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot)
## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot)
- 接口说明
......@@ -1453,10 +1444,10 @@ Notification.setSlotByBundle(bundle, notificationSlot, setSlotByBundleCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
var notificationSlot = {
type:SOCIAL_COMMUNICATION
type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.displayBadge(bundle, notificationSlot).then((void) => {
console.info("==========================>setSlotByBundleCallback=======================>");
......@@ -1465,7 +1456,7 @@ Notification.displayBadge(bundle, notificationSlot).then((void) => {
#### Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array\<NotificationSlot\>>)
## Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array\<NotificationSlot\>>)
- 接口说明
......@@ -1489,14 +1480,14 @@ function getSlotsByBundleCallback(err, data) {
console.info("==========================>getSlotsByBundleCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.getSlotsByBundle(bundle, getSlotsByBundleCallback);
```
#### Notification.getSlotsByBundle(bundle: BundleOption)
## Notification.getSlotsByBundle(bundle: BundleOption)
- 接口说明
......@@ -1516,7 +1507,7 @@ Notification.getSlotsByBundle(bundle, getSlotsByBundleCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.getSlotsByBundle(bundle).then((data) => {
console.info("==========================>getSlotsByBundleCallback=======================>");
......@@ -1525,7 +1516,7 @@ Notification.getSlotsByBundle(bundle).then((data) => {
#### Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\<number\>)
## Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\<number\>)
- 接口说明
......@@ -1549,14 +1540,14 @@ function getSlotNumByBundle(err, data) {
console.info("==========================>getSlotNumByBundleCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.getSlotNumByBundle(bundle, getSlotNumByBundleCallback);
```
#### Notification.getSlotNumByBundle(bundle: BundleOption)
## Notification.getSlotNumByBundle(bundle: BundleOption)
- 接口说明
......@@ -1576,7 +1567,7 @@ Notification.getSlotNumByBundle(bundle, getSlotNumByBundleCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.getSlotNumByBundle(bundle).then((data) => {
console.info("==========================>getSlotNumByBundleCallback=======================>");
......@@ -1585,7 +1576,7 @@ Notification.getSlotNumByBundle(bundle).then((data) => {
#### Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\<void\>)
## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1617,18 +1608,18 @@ function removeCallback(err) {
console.info("==========================>removeCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
var notificationKey = {
id:0;
label:"label";
id: 0;
label: "label";
}
Notification.remove(bundle, notificationKey, removeCallback);
```
#### Notification.remove(bundle: BundleOption, notificationKey: NotificationKey)
## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey)
- 接口说明
......@@ -1649,11 +1640,11 @@ Notification.remove(bundle, notificationKey, removeCallback);
```js
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
var notificationKey = {
id:0;
label:"label";
id: 0;
label: "label";
}
Notification.remove(bundle, notificationKey).then((void) => {
console.info("==========================>removeCallback=======================>");
......@@ -1662,7 +1653,7 @@ Notification.remove(bundle, notificationKey).then((void) => {
#### Notification.remove(hashCode: string, callback: AsyncCallback\<void\>)
## Notification.remove(hashCode: string, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1691,7 +1682,7 @@ Notification.remove(hashCode, removeCallback);
#### Notification.remove(hashCode: string)
## Notification.remove(hashCode: string)
- 接口说明
......@@ -1717,7 +1708,7 @@ Notification.remove(hashCode).then((void) => {
#### Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\<void\>)
## Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1741,14 +1732,14 @@ function removeAllCallback(err) {
console.info("==========================>removeAllCallback=======================>");
}
var bundle = {
bundle:"bundleName1";
bundle: "bundleName1";
}
Notification.removeAll(bundle, removeAllCallback);
```
#### Notification.removeAll(callback: AsyncCallback\<void\>)
## Notification.removeAll(callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1776,7 +1767,7 @@ Notification.removeAll(removeAllCallback);
#### Notification.removeAll(bundle?: BundleOption)
## Notification.removeAll(bundle?: BundleOption)
- 接口说明
......@@ -1802,7 +1793,7 @@ Notification.removeAll().then((void) => {
#### Notification.getAllActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
## Notification.getAllActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
- 接口说明
......@@ -1830,7 +1821,7 @@ Notification.getAllActiveNotifications(getAllActiveNotificationsCallback);
#### Notification.getAllActiveNotifications()
## Notification.getAllActiveNotifications()
- 接口说明
......@@ -1854,7 +1845,7 @@ Notification.getAllActiveNotifications().then((data) => {
#### Notification.getActiveNotificationCount(callback: AsyncCallback\<number\>)
## Notification.getActiveNotificationCount(callback: AsyncCallback\<number\>)
- 接口说明
......@@ -1882,7 +1873,7 @@ Notification.getActiveNotificationCount(getActiveNotificationCountCallback);
#### Notification.getActiveNotificationCount()
## Notification.getActiveNotificationCount()
- 接口说明
......@@ -1906,7 +1897,7 @@ Notification.getActiveNotificationCount().then((data) => {
#### Notification.getActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
## Notification.getActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
- 接口说明
......@@ -1934,7 +1925,7 @@ Notification.getActiveNotifications(getActiveNotificationsCallback);
#### Notification.getActiveNotifications()
## Notification.getActiveNotifications()
- 接口说明
......@@ -1958,7 +1949,7 @@ Notification.getActiveNotifications().then((data) => {
#### Notification.cancelGroup(groupName: string, callback: AsyncCallback\<void\>)
## Notification.cancelGroup(groupName: string, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -1989,7 +1980,7 @@ Notification.cancelGroup(groupName, cancelGroupCallback);
#### Notification.cancelGroup(groupName: string)
## Notification.cancelGroup(groupName: string)
- 接口说明
......@@ -2016,7 +2007,7 @@ Notification.cancelGroup(groupName).then(() => {
#### Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\<void\>)
## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -2041,7 +2032,7 @@ function removeGroupByBundleCallback(err) {
console.info("==========================>removeGroupByBundleCallback=======================>");
}
var bundleOption = {bundle:"Bundle"};
var bundleOption = {bundle: "Bundle"};
var groupName = "GroupName";
Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCallback);
......@@ -2049,7 +2040,7 @@ Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCal
#### Notification.removeGroupByBundle(bundle: BundleOption, groupName: string)
## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string)
- 接口说明
......@@ -2069,7 +2060,7 @@ Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCal
- 示例
```js
var bundleOption = {bundle:"Bundle"};
var bundleOption = {bundle: "Bundle"};
var groupName = "GroupName";
Notification.removeGroupByBundle(bundleOption, groupName).then(() => {
console.info("==========================>removeGroupByBundlePromise=======================>");
......@@ -2078,7 +2069,7 @@ Notification.removeGroupByBundle(bundleOption, groupName).then(() => {
#### Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\<void\>)
## Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -2103,9 +2094,9 @@ function setDoNotDisturbDateCallback(err) {
}
var doNotDisturbDate = {
type : notification.DoNotDisturbType.TYPE_ONCE,
begin : new Date(),
end : new Date(2021, 11, 15, 18, 0)
type: notification.DoNotDisturbType.TYPE_ONCE,
begin: new Date(),
end: new Date(2021, 11, 15, 18, 0)
}
Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
......@@ -2113,7 +2104,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
#### Notification.setDoNotDisturbDate(date: DoNotDisturbDate)
## Notification.setDoNotDisturbDate(date: DoNotDisturbDate)
- 接口说明
......@@ -2133,9 +2124,9 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
```js
var doNotDisturbDate = {
type : notification.DoNotDisturbType.TYPE_ONCE,
begin : new Date(),
end : new Date(2021, 11, 15, 18, 0)
type: notification.DoNotDisturbType.TYPE_ONCE,
begin: new Date(),
end: new Date(2021, 11, 15, 18, 0)
}
Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => {
console.info("==========================>setDoNotDisturbDatePromise=======================>");
......@@ -2144,7 +2135,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => {
#### Notification.getDoNotDisturbDate(callback: AsyncCallback\<DoNotDisturbDate\>)
## Notification.getDoNotDisturbDate(callback: AsyncCallback\<DoNotDisturbDate\>)
- 接口说明
......@@ -2172,7 +2163,7 @@ Notification.getDoNotDisturbDate(getDoNotDisturbDateCallback);
#### Notification.getDoNotDisturbDate()
## Notification.getDoNotDisturbDate()
- 接口说明
......@@ -2196,7 +2187,7 @@ Notification.getDoNotDisturbDate().then((data) => {
#### Notification.supportDoNotDisturbMode(callback: AsyncCallback\<boolean\>)
## Notification.supportDoNotDisturbMode(callback: AsyncCallback\<boolean\>)
- 接口说明
......@@ -2224,7 +2215,7 @@ Notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback);
#### Notification.supportDoNotDisturbMode()
## Notification.supportDoNotDisturbMode()
- 接口说明
......@@ -2248,15 +2239,15 @@ Notification.supportDoNotDisturbMode().then((data) => {
#### WantAgent接口
## WantAgent接口
#### 导入模块
## 导入模块
```js
import WantAgent from '@ohos.wantAgent';
```
#### WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\<WantAgent\>)
## WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\<WantAgent\>)
- 接口说明
......@@ -2291,11 +2282,6 @@ import WantAgent from '@ohos.wantAgent';
| 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类型说明
......@@ -2314,8 +2300,8 @@ import WantAgent from '@ohos.wantAgent';
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//getWantAgent回调
function getWantAgentCallback(err, data) {
......@@ -2349,12 +2335,12 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
```
#### WantAgent.getWantAgent(info: WantAgentInfo): Promise\<WantAgent\>
## WantAgent.getWantAgent(info: WantAgentInfo): Promise\<WantAgent\>
- 接口说明
......@@ -2374,8 +2360,8 @@ wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//WantAgentInfo对象
var wantAgentInfo = {
......@@ -2405,14 +2391,14 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
});
```
#### WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\<string\>)
## WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\<string\>)
- 接口说明
......@@ -2433,17 +2419,17 @@ wantAgent.getWantAgent(wantAgentInfo).then((data) => {
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
......@@ -2476,18 +2462,18 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getBundleName回调
function getBundleNameCallback(err, data) {
console.info("==========================>getBundleNameCallback=======================>");
}
wantAgent.getBundleName(WantAgent, getBundleNameCallback)
WantAgent.getBundleName(wantAgent, getBundleNameCallback)
```
#### WantAgent.getBundleName(agent: WantAgent): Promise\<string\>
## WantAgent.getBundleName(agent: WantAgent): Promise\<string\>
- 接口说明
......@@ -2507,11 +2493,11 @@ wantAgent.getBundleName(WantAgent, getBundleNameCallback)
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
......@@ -2541,19 +2527,19 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
wantAgent = data;
});
wantAgent.getBundleName(WantAgent).then((data) => {
WantAgent.getBundleName(wantAgent).then((data) => {
console.info("==========================>getBundleNameCallback=======================>");
});
```
#### WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\<number\>)
## WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\<number\>)
- 接口说明
......@@ -2574,17 +2560,17 @@ wantAgent.getBundleName(WantAgent).then((data) => {
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
......@@ -2617,18 +2603,18 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getUid回调
function getUidCallback(err, data) {
console.info("==========================>getUidCallback=======================>");
}
wantAgent.getUid(WantAgent, getUidCallback)
WantAgent.getUid(wantAgent, getUidCallback)
```
#### WantAgent.getUid(agent: WantAgent): Promise\<number\>
## WantAgent.getUid(agent: WantAgent): Promise\<number\>
- 接口说明
......@@ -2648,11 +2634,11 @@ wantAgent.getUid(WantAgent, getUidCallback)
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
......@@ -2682,19 +2668,19 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
wantAgent = data;
});
wantAgent.getUid(WantAgent).then((data) => {
WantAgent.getUid(wantAgent).then((data) => {
console.info("==========================>getUidCallback=======================>");
});
```
#### WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\<Want\>)
## WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\<Want\>)
- 接口说明
......@@ -2715,17 +2701,17 @@ wantAgent.getUid(WantAgent).then((data) => {
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
......@@ -2758,22 +2744,22 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentWantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//getWant回调
function getWantCallback(err, data) {
console.info("==========================>getWantCallback=======================>");
}
wantAgent.getWant(WantAgent, getWantCallback)
WantAgent.getWant(wantAgent, getWantCallback)
```
#### WantAgent.getWant(agent: WantAgent): Promise\<Want\>
## WantAgent.getWant(agent: WantAgent): Promise\<Want\>
- 接口说明
获取WantAgent对象的Uid(Promise形式)
获取WantAgent对象的want(Promise形式)
- getWant参数描述
......@@ -2789,11 +2775,11 @@ wantAgent.getWant(WantAgent, getWantCallback)
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
......@@ -2823,19 +2809,19 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
wantAgent = data;
});
wantAgent.getWant(WantAgent).then((data) => {
WantAgent.getWant(wantAgent).then((data) => {
console.info("==========================>getWantCallback=======================>");
});
```
#### WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\<void\>)
## WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\<void\>)
- 接口说明
......@@ -2856,17 +2842,17 @@ wantAgent.getWant(WantAgent).then((data) => {
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
......@@ -2899,18 +2885,18 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//cancel回调
function cancelCallback(err, data) {
console.info("==========================>cancelCallback=======================>");
}
wantAgent.cancel(WantAgent, cancelCallback)
WantAgent.cancel(wantAgent, cancelCallback)
```
#### WantAgent.cancel(agent: WantAgent): Promise\<void\>
## WantAgent.cancel(agent: WantAgent): Promise\<void\>
- 接口说明
......@@ -2930,11 +2916,11 @@ wantAgent.cancel(WantAgent, cancelCallback)
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//WantAgentInfo对象
var wantAgentInfo = {
......@@ -2964,19 +2950,19 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
wantAgent = data;
});
wantAgent.cancel(WantAgent).then((data) => {
WantAgent.cancel(wantAgent).then((data) => {
console.info("==========================>cancelCallback=======================>");
});
```
#### WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\<CompleteData\>)
## WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\<CompleteData\>)
- 接口说明
......@@ -3007,17 +2993,17 @@ wantAgent.cancel(WantAgent).then((data) => {
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent;
var wantAgent;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent = data;
wantAgent = data;
} else {
console.info('----getWantAgent failed!----');
}
......@@ -3050,7 +3036,7 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//trigger回调
function triggerCallback(err, data) {
......@@ -3060,12 +3046,12 @@ function triggerCallback(err, data) {
var triggerInfo = {
code:0
}
wantAgent.trigger(WantAgent, triggerInfo, triggerCallback)
WantAgent.trigger(wantAgent, triggerInfo, triggerCallback)
```
#### WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\<boolean\>)
## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\<boolean\>)
- 接口说明
......@@ -3087,19 +3073,19 @@ wantAgent.trigger(WantAgent, triggerInfo, triggerCallback)
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent1;
var WantAgent2;
var wantAgent1;
var wantAgent2;
//getWantAgent回调
function getWantAgentCallback(err, data) {
console.info("==========================>getWantAgentCallback=======================>");
if (err.code == 0) {
WantAgent1 = data;
WantAgent2 = data;
wantAgent1 = data;
wantAgent2 = data;
} else {
console.info('----getWantAgent failed!----');
}
......@@ -3132,18 +3118,18 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
//equal回调
function equalCallback(err, data) {
console.info("==========================>equalCallback=======================>");
}
wantAgent.equal(WantAgent1, WantAgent1, equalCallback)
WantAgent.equal(wantAgent1, wantAgent2, equalCallback)
```
#### WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\<boolean\>
## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\<boolean\>
- 接口说明
......@@ -3164,12 +3150,12 @@ wantAgent.equal(WantAgent1, WantAgent1, equalCallback)
- 示例
```js
import wantAgent from '@ohos.wantAgent';
import { OperationType, Flags } from '@ohos.wantagent';
import WantAgent from '@ohos.wantAgent';
import { OperationType, WantAgentFlags } from '@ohos.wantagent';
//wantAgent对象
var WantAgent1;
var WantAgent2;
var wantAgent1;
var wantAgent2;
//WantAgentInfo对象
var wantAgentInfo = {
......@@ -3199,12 +3185,13 @@ var wantAgentInfo = {
wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
}
wantAgent.getWantAgent(wantAgentInfo).then((data) => {
WantAgent.getWantAgent(wantAgentInfo).then((data) => {
console.info("==========================>getWantAgentCallback=======================>");
WantAgent = data;
wantAgent1 = data;
wantAgent2 = data;
});
wantAgent.equal(WantAgent1, WantAgent2).then((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.
先完成此消息的编辑!
想要评论请 注册