diff --git a/zh-cn/application-dev/reference/apis/js-apis-Context.md b/zh-cn/application-dev/reference/apis/js-apis-Context.md index e0536f8dfad59b120302406a2a519eebd19703f1..5a166a8f30ea168e0425013abf4698c34b4c6c96 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-Context.md +++ b/zh-cn/application-dev/reference/apis/js-apis-Context.md @@ -1,542 +1,555 @@ -# Context模块(JS端SDK接口) - -#### 支持设备 - -| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 | -| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ | -| Context.getOrCreateLocalDir(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getOrCreateLocalDir() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.verifyPermission(permission: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.verifyPermission(permission: string, options?: PermissionOptions) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.requestPermissionsFromUser(permissions: Array\, requestCode: number, resultCallback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getApplicationInfo(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getApplicationInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getBundleName(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getBundleName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getProcessInfo(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getProcessInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getElementName(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getElementName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getProcessName(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getProcessName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getCallingBundle(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| Context.getCallingBundle() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | - -#### 权限列表 - -**ohos.permission.RUNNING_LOCK permission** - -#### 导入模块 - -``` -import featureAbility from '@ohos.ability.featureAbility' -import bundle from '@ohos.bundle' -``` - -#### Context.getOrCreateLocalDir(callback: AsyncCallback\) - -- 接口说明 - - 获取应用程序的本地根目录。如果是第一次调用,将创建目录(callback形式) - -- getOrCreateLocalDir参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------- | -------- | ----------------------- | ---- | ---------------- | -| callback | 只读 | AsyncCallback\) | 是 | 被指定的回调方法 | - -- 返回值 - - 根目录 - -- 示例 - -```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\) - -- 接口说明 - - 验证系统中运行的特定pid和uid是否允许指定的权限(callback形式) - -- verifyPermission参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | ---------------------- | ---- | ---------------- | -| permission | 只读 | string | 是 | 指定权限的名称 | -| options | 只读 | PermissionOptions | 是 | 进程id | -| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | - -- 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\) - -- 接口说明 - - 验证系统中运行的特定pid和uid是否允许指定的权限(callback形式) - -- 参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | ----------------------- | ---- | ---------------- | -| permission | 只读 | string | 是 | 指定权限的名称 | -| callback | 只读 | AsyncCallback\) | 是 | 被指定的回调方法 | - -- 返回值 - - 如果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\, requestCode: number, resultCallback: AsyncCallback\) - -- 接口说明 - - 从系统请求某些权限(callback形式) - -- requestPermissionsFromUser参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------------- | -------- | ---------------------------------------- | ---- | --------------------------------------------- | -| permissions | 只读 | Array\ | 是 | 指示要请求的权限列表。此参数不能为null | -| requestCode | 只读 | number | 是 | 指示要传递给PermissionRequestResult的请求代码 | -| resultCallback | 只读 | AsyncCallback\) | 是 | 被指定的回调方法 | -- PermissionRequestResult类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | -------------- | ---- | ------------------ | -| requestCode | 只读 | number | 是 | 用户传入的请求代码 | -| permissions | 只读 | Array\ | 是 | 用户传入的权限 | -| authResults | 只读 | Array\ | 是 | 求权限的结果 | - -- 返回值 - - 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\) - -- 接口说明 - - 获取有关当前应用程序的信息(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | - -- 返回值 - - 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\) - -- 接口说明 - - 获取当前ability的捆绑包名称(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ---------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | - -- 返回值 - - 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\) - -- 接口说明 - - 获取有关当前进程的信息,包括进程ID和名称(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | --------------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | - -- 返回值 - - 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\) - -- 接口说明 - - 获取当前能力的ohos.bundle.ElementName对象。此方法仅适用于页面功能(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | --------------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | - -- 返回值 - - 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\) - -- 接口说明 - - 获取当前进程的名称(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ---------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | - -- 返回值 - - 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\) - -- 接口说明 - - 获取调用当前能力的能力的捆绑包名称(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ---------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | - -- 返回值 - - 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\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getOrCreateLocalDir() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.verifyPermission(permission: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.verifyPermission(permission: string, options?: PermissionOptions) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.requestPermissionsFromUser(permissions: Array\, requestCode: number, resultCallback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getApplicationInfo(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getApplicationInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getBundleName(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getBundleName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getProcessInfo(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getProcessInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getElementName(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getElementName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getProcessName(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getProcessName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| Context.getCallingBundle(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| 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) + +- 接口说明 + + 获取应用程序的本地根目录。如果是第一次调用,将创建目录(callback形式) + +- getOrCreateLocalDir参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ---------------------- | ---- | ------------------------ | +| callback | 只读 | AsyncCallback\ | 是 | 返回应用程序的本地根目录 | + +- 返回值 + + void + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getOrCreateLocalDir((err, data)=>{ + console.info("data=" + data); +}) +``` + + + +## Context.getOrCreateLocalDir() + +- 接口说明 + + 获取应用程序的本地根目录。如果是第一次调用,将创建目录(Promise形式) + +- 返回值 + + | 类型 | 说明 | + | --------------- | -------------------- | + | Promise | 应用程序的本地根目录 | + +- 示例 + +```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) + +- 接口说明 + + 验证系统中运行的特定pid和uid是否允许指定的权限(callback形式) + +- 参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ----------------------------------------------- | ---- | ----------------------------------- | +| permission | 只读 | string | 是 | 指定权限的名称 | +| options | 只读 | [PermissionOptions](#PermissionOptions类型说明) | 是 | 进程id | +| callback | 只读 | AsyncCallback\ | 是 | 返回权限验证结果,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) + +- 接口说明 + + 验证系统中运行的特定pid和uid是否具有指定的权限(callback形式) + +- 参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ---------------------- | ---- | ----------------------------------- | +| permission | 只读 | string | 是 | 指定权限的名称 | +| callback | 只读 | AsyncCallback\ | 是 | 返回权限验证结果,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 | 如果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\ | 是 | 用户传入的权限 | +| authResults | 只读 | Array\ | 是 | 求权限的结果 | + + + +## Context.requestPermissionsFromUser(permissions: Array, requestCode: number, resultCallback: AsyncCallback<[PermissionRequestResult](#PermissionRequestResult类型说明)>) + +- 接口说明 + + 从系统请求某些权限(callback形式) + +- requestPermissionsFromUser参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------- | -------- | ------------------------------------------------------------ | ---- | --------------------------------------------- | +| permissions | 只读 | Array\ | 是 | 指示要请求的权限列表。此参数不能为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) + +- 接口说明 + + 获取有关当前应用程序的信息(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | ------------------------------- | ---- | ---------------------- | + | callback | 只读 | AsyncCallback\ | 是 | 返回当前应用程序的信息 | + +- 返回值 + + void + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getApplicationInfo() +``` + + + +## Context.getApplicationInfo + +- 接口说明 + + 获取有关当前应用程序的信息(Promise形式) + +- 参数描述 + + 无 + +- 返回值 + + | 类型 | 说明 | + | ------------------------ | ------------------ | + | Promise | 当前应用程序的信息 | + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getApplicationInfo().then((void) => { + console.info("==========================>getApplicationInfoCallback=======================>"); +}); +``` + + + +## Context.getBundleName(callback: AsyncCallback) + +- 接口说明 + + 获取当前ability的捆绑包名称(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | ---------------------- | ---- | --------------------------- | + | callback | 只读 | AsyncCallback\ | 是 | 返回当前ability的捆绑包名称 | + +- 返回值 + + void + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getBundleName() +``` + + + +## Context.getBundleName + +- 接口说明 + + 获取当前ability的捆绑包名称(Promise形式) + +- 参数描述 + + 无 + +- 返回值 + + | 类型 | 说明 | + | --------------- | ----------------------- | + | Promise | 当前ability的捆绑包名称 | + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getBundleName().then((void) => { + console.info("==========================>getBundleNameCallback=======================>"); +}); +``` + + + +## Context.getProcessInfo(callback: AsyncCallback) + +- 接口说明 + + 获取有关当前进程的信息,包括进程ID和名称(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | --------------------------- | ---- | ------------------ | + | callback | 只读 | AsyncCallback\ | 是 | 返回当前进程的信息 | + +- 返回值 + + void + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getProcessInfo() +``` + + + +## Context.getProcessInfo + +- 接口说明 + + 获取有关当前进程的信息,包括进程id和名称(Promise形式) + +- 参数描述 + + 无 + +- 返回值 + + | 类型 | 说明 | + | -------------------- | -------------- | + | Promise | 当前进程的信息 | + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getProcessInfo().then((void) => { + console.info("==========================>getProcessInfoCallback=======================>"); +}); +``` + + + +## Context.getElementName(callback: AsyncCallback) + +- 接口说明 + + 获取当前ability的ohos.bundle.ElementName对象。此方法仅适用于页面功能(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | --------------------------- | ---- | -------------------------------------------- | + | callback | 只读 | AsyncCallback\ | 是 | 返回当前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 | 当前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)** + +- 接口说明 + + 获取当前进程的名称(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | ---------------------- | ---- | ------------------ | + | callback | 只读 | AsyncCallback\ | 是 | 返回当前进程的名称 | + +- 返回值 + + void + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getProcessName() +``` + + + +## Context.getProcessName + +- 接口说明 + + 获取当前进程的名称(Promise形式) + +- 参数描述 + + 无 + +- 返回值 + + | 类型 | 说明 | + | --------------- | -------------- | + | Promise | 当前进程的名称 | + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getProcessName().then((void) => { + console.info("==========================>getProcessNameCallback=======================>"); +}); +``` + + + +## Context.getCallingBundle(callback: AsyncCallback) + +- 接口说明 + + 获取调用当前ability捆绑包名称(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | ---------------------- | ---- | ------------------------- | + | callback | 只读 | AsyncCallback\ | 是 | 返回当前ability捆绑包名称 | + +- 返回值 + + void + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getCallingBundle() +``` + + + +## Context.getCallingBundle + +- 接口说明 + + 获取调用当前ability捆绑包名称(Promise形式) + +- 参数描述 + + 无 + +- 返回值 + + | 类型 | 说明 | + | --------------- | ------------------------- | + | Promise | 调用当前ability捆绑包名称 | + + + +- 示例 + +```js +import featureAbility from '@ohos.ability.featureAbility' +var context = featureAbility.getContext(); +context.getCallingBundle().then((void) => { + console.info("==========================>getCallingBundleCallback=======================>"); +}); +``` + diff --git a/zh-cn/application-dev/reference/apis/js-apis-DataUriUtils.md b/zh-cn/application-dev/reference/apis/js-apis-DataUriUtils.md index 876057ea7d8dc0889f376ed4badf779fa424a5e8..f1366f61abb790fe045ca6178e3de28c400b0d57 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-DataUriUtils.md +++ b/zh-cn/application-dev/reference/apis/js-apis-DataUriUtils.md @@ -1,122 +1,118 @@ -### 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, +) +``` + diff --git a/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md b/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md index dd7dc23cbbdbc2538c2720380f728795872e21b2..7339625b60c941df9081396f71b414c6907b8748 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md +++ b/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md @@ -1,508 +1,910 @@ -# CommonEvent模块(JS端SDK接口) - -#### 支持设备 - -| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | -| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | -| CommonEvent.publish(event: string, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | 不支持 | -| CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | 不支持 | -| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | 不支持 | -| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | 不支持 | -| CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | 不支持 | -| CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | 不支持 | - -#### 权限列表 - -| 系统公共事件宏 | 系统公共事件名称 | 订阅者所需权限 | -| ------------------------------------------------------------ | ----------------------------------------------------------- | ------------------------------------------------------------ | -| 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) - -- 接口说明 - - 发布公共事件(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) - -- 接口说明 - - 发布公共事件指定发布信息(callback形式) - -- publish参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ---------------------- | ---- | ---------------------- | - | event | 只读 | string | 是 | 表示要发布的公共事件 | - | options | 只读 | CommonEventPublishData | 是 | 表示发布公共事件的属性 | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- CommonEventPublishData类型说明 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | --------------------- | -------- | -------------------- | ---- | ---------------------------- | - | bundleName | 只读 | string | 否 | 表示包名称 | - | code | 只读 | int | 否 | 表示公共事件的结果代码 | - | data | 只读 | string | 否 | 表示公共事件的自定义结果数据 | - | subscriberPermissions | 只读 | Array | 否 | 表示订阅者的权限 | - | 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) - -- 接口说明 - - 创建订阅者(callback形式) - -- createSubscriber参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ------------- | -------- | ------------------------------------ | ---- | ------------------------ | - | subscribeInfo | 只读 | CommonEventSubscribeInfo | 是 | 表示订阅信息 | - | callback | 只读 | AsyncCallback | 是 | 表示创建订阅者的回调方法 | - -- CommonEventSubscriber 类说明 - - | 名称 | 参数 | 返回值 | 描述 | - | --------------------- | --------------------------------------------------------- | --------------------------------- | ------------------------------------------------------------ | - | getCode | callback: AsyncCallback | void | 获取公共事件的结果代码(callback形式) | - | getCode | void | Promise | 获取公共事件的结果代码(Promise形式) | - | setCode | code: number, callback: AsyncCallback | void | 设置公共事件的结果代码(callback形式) | - | setCode | code: number | Promise | 设置公共事件的结果代码(Promise形式) | - | getData | callback: AsyncCallback | void | 获取公共事件的结果数据(callback形式) | - | getData | void | Promise | 获取公共事件的结果数据(Promise形式) | - | setData | data: string, callback: AsyncCallback | void | 设置公共事件的结果数据(callback形式) | - | setData | data: string | Promise | 设置公共事件的结果数据(Promise形式) | - | setCodeAndData | code: number, data: string, callback: AsyncCallback | void | 设置公共事件的结果代码和结果数据(callback形式) | - | setCodeAndData | code: number, data: string | Promise | 设置公共事件的结果代码和结果数据(Promise形式) | - | isOrderedCommonEvent | callback: AsyncCallback | void | 查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(callback形式) | - | isOrderedCommonEvent | void | Promise | 查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(Promise形式) | - | abortCommonEvent | callback: AsyncCallback | void | 取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式) | - | abortCommonEvent | void | Promise | 取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式) | - | clearAbortCommonEvent | callback: AsyncCallback | void | 清除当前有序公共事件abort状态(callback形式) | - | clearAbortCommonEvent | void | Promise | 清除当前有序公共事件abort状态(Promise形式) | - | getAbortCommonEvent | callback: AsyncCallback | void | 获取当前有序公共事件是否取消的状态(callback形式) | - | getAbortCommonEvent | void | Promise | 获取当前有序公共事件是否取消的状态Promise形式) | - | getSubscribeInfo | callback: AsyncCallback | void | 获取订阅者的订阅信息(callback形式) | - | getSubscribeInfo | void | Promise | 获取订阅者的订阅信息(Promise形式) | - -- CommonEventSubscribeInfo类型说明 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ------------------- | -------- | ------------- | ---- | ------------------------------------------------------------ | - | events | 只读 | Array | 是 | 表示要订阅的公共事件 | - | 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 | 是 | 表示要发送的公共事件 | - | publisherPermission | 只读 | string | 否 | 表示发布者的权限 | - | publisherDeviceId | 只读 | int | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID | - | userId | 只读 | int | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 | - | priority | 只读 | int | 否 | 表示订阅者的优先级。值的范围是-100到1000 | - -- 返回值 - - Promise - -- 示例 - -```js -var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 -//订阅者信息 -var subscribeInfo = { - events: ["event"] -}; -//创建订阅者 -CommonEvent.createSubscriber(subscribeInfo).then((data) => { - console.info("==========================>createSubscriberPromise=======================>"); - subscriber = data; -}); -``` - - - -#### CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback) - -- 接口说明 - - 订阅公共事件(callback形式) - -- subscribe参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ---------- | -------- | ------------------------------ | ---- | ------------------------------ | - | subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 | - | callback | 只读 | AsyncCallback | 是 | 表示接收公共事件数据的回调函数 | - -- 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) - -- 接口说明 - - 取消订阅公共事件(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); -``` - - - - - +# 公共事件模块 + +**说明:** +本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 + +## 支持设备 + +| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | +| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | +| CommonEvent.publish(event: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | +| CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | +| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | +| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | 不支持 | +| CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | +| CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | + +## 权限列表 + +| 系统公共事件宏 | 系统公共事件名称 | 订阅者所需权限 | +| ------------------------------------------------------------ | ----------------------------------------------------------- | ------------------------------------------------------------ | +| 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\ | 是 | 表示被指定的回调方法 | + +* 示例 + +```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](#publishData) | 是 | 表示发布公共事件的属性 | + | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 示例 + + +```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\): 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\ + +- 接口说明 + + 创建订阅者(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\): 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 + +- 接口说明 + + 取消订阅公共事件(callback形式) + +- unsubscribe参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | ---------- | -------- | --------------------- | ---- | ---------------------- | + | subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 | + | callback | 只读 | AsyncCallback\ | 是 | 表示取消订阅的回调方法 | + +- 示例 + +```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); +``` + +## CommonEventPublishData + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------------------- | -------- | -------------------- | ---- | ---------------------------- | +| bundleName | 只读 | string | 否 | 表示包名称 | +| code | 只读 | number | 否 | 表示公共事件的结果代码 | +| data | 只读 | string | 否 | 表示公共事件的自定义结果数据 | +| subscriberPermissions | 只读 | Array\ | 否 | 表示订阅者的权限 | +| isOrdered | 只读 | boolean | 否 | 表示是否是有序事件 | +| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 | + +## CommonEventSubscribeInfo + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------------------- | -------- | -------------- | ---- | ------------------------------------------------------------ | +| events | 只读 | Array\ | 是 | 表示要发送的公共事件 | +| publisherPermission | 只读 | string | 否 | 表示发布者的权限 | +| publisherDeviceId | 只读 | string | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID | +| userId | 只读 | number | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 | +| priority | 只读 | number | 否 | 表示订阅者的优先级。值的范围是-100到1000 | + +## CommonEventData + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | -------------------- | ---- | ------------------------------------------------------ | +| event | 只读 | string | 是 | 表示当前接收的公共事件名称 | +| bundleName | 只读 | string | 否 | 表示包名称 | +| code | 只读 | number | 否 | 表示公共事件的结果代码,用于传递int类型的数据 | +| data | 只读 | string | 否 | 表示公共事件的自定义结果数据,用于传递string类型的数据 | +| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 | + +## CommonEventSubscriber + +### getCode(callback形式) + +- 方法说明 + + 获取公共事件的结果代码(callback形式) + +- 参数 + + | 参数名 | 类型 | 必填 | 描述 | + | -------- | ---------------------- | ---- | ------------------ | + | callback | AsyncCallback\ | 是 | 公共事件的结果代码 | + +- 示例 + + ```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\ | 公共事件的结果代码 | + +- 示例 + + ```js + var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 + subscriber.getCode().then((data) => { + console.info("==========================>getCodePromise=======================>"); + console.info("==========================>code:=======================>", data); + }); + ``` + +### setCode(callback形式) + +- 方法说明 + + 设置公共事件的结果代码(callback形式) + +- 参数 + + | 参数名 | 类型 | 必填 | 描述 | + | -------- | -------------------- | ---- | -------------------- | + | code | number | 是 | 公共事件的结果代码 | + | callback | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 示例 + + ```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\ | 是 | 公共事件的结果数据 | + +- 示例 + + ```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\ | 公共事件的结果数据 | + +- 示例 + + ```js + var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 + subscriber.getData().then((data) => { + console.info("==========================>getDataPromise=======================>"); + console.info("==========================>data:=======================>", data); + }); + ``` + +### setData(callback形式) + +- 方法说明 + + 设置公共事件的结果数据(callback形式) + +- 参数 + + | 参数名 | 类型 | 必填 | 描述 | + | -------- | -------------------- | ---- | -------------------- | + | data | string | 是 | 公共事件的结果数据 | + | callback | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 示例 + + ```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\ | 是 | 表示被指定的回调方法 | + +- 示例 + + ```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\ | 是 | 当前公共事件的是否为有序公共事件 | + +- 示例 + + ```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\ | 当前公共事件的是否为有序公共事件 | + +- 示例 + + ```js + var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 + subscriber.isOrderedCommonEvent().then((data) => { + console.info("==========================>isOrdered:=======================>", data); + }); + ``` + +### abortCommonEvent(callback形式) + +- 方法说明 + + 取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式) + +- 参数 + + | 参数名 | 类型 | 必填 | 描述 | + | -------- | ----------------------- | ---- | ------------------ | + | callback | AsyncCallback\ | 是 | 取消当前的公共事件 | + +- 示例 + + ```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\ | 是 | 表示被指定的回调方法 | + +- 示例 + + ```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\ | 是 | 表示当前有序公共事件是否取消的状态 | + +- 示例 + + ```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\ | 表示当前有序公共事件是否取消的状态 | + +- 示例 + + ```js + var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 + subscriber.getAbortCommonEvent().then((data) => { + console.info("==========================>getAbortCommonEvent:=======================>"); + console.info("==========================>abort:=======================>", data); + }); + ``` + +### getSubscribeInfo(callback形式) + +- 方法说明 + + 获取订阅者的订阅信息(callback形式) + +- 参数 + + | 参数名 | 类型 | 必填 | 描述 | + | -------- | ---------------------------------------- | ---- | -------------------- | + | callback | AsyncCallback\ | 是 | 表示订阅者的订阅信息 | + +- 示例 + + ```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\ | 表示订阅者的订阅信息 | + +- 示例 + + ```js + var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 + subscriber.getSubscribeInfo().then((data) => { + console.info("==========================>getSubscribeInfo:=======================>"); + console.info("==========================>priority:=======================>", data.priority); + }); + ``` \ No newline at end of file diff --git a/zh-cn/application-dev/reference/apis/js-apis-dataAbilityHelper.md b/zh-cn/application-dev/reference/apis/js-apis-dataAbilityHelper.md index cb1e3f454b866a4ff5e11fec56833a2c74129001..a9aff0e61ff2541e5f16b834c8f12beaa40e0f89 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-dataAbilityHelper.md +++ b/zh-cn/application-dev/reference/apis/js-apis-dataAbilityHelper.md @@ -1,837 +1,866 @@ -### DataAbilityHelper模块(JS端SDK接口) - -#### 支持设备 - -| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 | -| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ | -| DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.openFile(uri: string, mode: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.getType(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.getType(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.normalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.denormalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.notifyChange(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.query(uri: string, columns: Array\, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| DataAbilityHelper.query(uri: string, columns: Array\, 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\) - -- 接口说明 - - 在指定的远程路径中打开文件(callback形式) - - -* 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | -------------------- | ---- | ------------------------ | - | uri | 只读 | string | 是 | 指示要打开的文件的路径。 | - | mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 | - | callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | - -* 返回值 - - 返回文件描述符。 - -* 示例 - -```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\) - -- 接口说明 - - 注册观察者以观察给定uri指定的数据(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | -------------------- | ---- | ------------------------ | - | type | 只读 | string | 是 | 数据更改。 | - | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | - | callback | 只读 | AsyncCallback\ | 是 | 指示数据更改时的回调。 | - -- 返回值 - - 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\) - -- 接口说明 - - 注册观察者以观察给定uri指定的数据(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | -------------------- | ---- | ------------------------ | - | type | 只读 | string | 是 | 数据更改。 | - | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | - | callback | 只读 | AsyncCallback\ | 否 | 指示已注册的回调。 | - -- 返回值 - - 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\) - -- 接口说明 - - 获取给定URI指定的日期的MIME类型(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ---------------------- | ---- | ------------------------ | - | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 返回与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>) - -- 接口说明 - - 获取支持的文件的MIME类型(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------------- | -------- | ---------------------- | ---- | ---------------------------- | - | uri | 只读 | string | 是 | 指示要获取的文件的路径。 | - | mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 返回匹配的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\) - -- 接口说明 - - 将引用数据功能的给定uri转换为规范化uri(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ---------------------- | ---- | ----------------------- | - | uri | 只读 | string | 是 | 指示要规范化的uri对象。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 如果数据功能支持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\) - -- 接口说明 - - 将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ---------------------- | ---- | ----------------------- | - | uri | 只读 | string | 是 | 指示要规范化的uri对象。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 如果反规范化成功,则返回反规范化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\) - -- 接口说明 - - 通知已注册的观察者uri指定的数据资源的更改(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | -------------------- | ---- | ------------------------ | - | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 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\) - -- 接口说明 - - 将单个数据记录插入数据库(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ------------ | -------- | ---------------------- | ---- | ------------------------------------------------------ | - | uri | 只读 | string | 是 | 指示要插入的数据的路径。 | - | valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 返回插入数据记录的索引。 - -- 示例 - -```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, callback: AsyncCallback\) - -- 接口说明 - - 将多个数据记录插入数据库(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ------------ | -------- | ----------------------- | ---- | ------------------------ | - | uri | 只读 | string | 是 | 指示要插入的数据的路径。 | - | valuesBucket | 只读 | Array | 是 | 指示要插入的数据记录。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 返回插入的数据记录数。 - -- 示例 - -```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) - -- 接口说明 - - 将多个数据记录插入数据库(Promise形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ------------ | -------- | ----------------------- | ---- | ------------------------ | - | uri | 只读 | string | 是 | 指示要插入的数据的路径。 | - | valuesBucket | 只读 | Array | 是 | 指示要插入的数据记录。 | - -- 返回值 - - 返回插入的数据记录数。 - -- 示例 - -```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\) - -- 接口说明 - - 从数据库中删除一个或多个数据记录(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ | - | uri | 只读 | string | 是 | 指示要删除的数据的路径。 | - | valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 返回已删除的数据记录数。 - -- 示例 - -```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\) - -- 接口说明 - - 更新数据库中的数据记录(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ | - | uri | 只读 | string | 是 | 指示要更新的数据的路径。 | - | valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 | - | predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 返回更新的数据记录数。 - -- 示例 - -```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\, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) - -- 接口说明 - - 查询数据库中的数据(callback形式) - -- 参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ | - | uri | 只读 | string | 是 | 指示要查询的数据的路径。 | - | columns | 只读 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 | - | predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | - | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | - -- 返回值 - - 返回查询结果 - -- 示例 - -```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\, 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\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.openFile(uri: string, mode: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.getType(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.getType(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.normalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.denormalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.notifyChange(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.query(uri: string, columns: Array\, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| DataAbilityHelper.query(uri: string, columns: Array\, 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\) + +- 接口说明 + + 在指定的远程路径中打开文件(callback形式) + + +* 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | -------------------- | ---- | ------------------------ | + | uri | 只读 | string | 是 | 指示要打开的文件的路径。 | + | mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 | + | callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | + +* 返回值 + + 返回文件描述符。 + +* 示例 + +```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\) + +- 接口说明 + + 注册观察者以观察给定uri指定的数据(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | -------------------- | ---- | ------------------------ | + | type | 只读 | string | 是 | 数据更改。 | + | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | + | callback | 只读 | AsyncCallback\ | 是 | 指示数据更改时的回调。 | + +- 返回值 + + 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\) + +- 接口说明 + + 注册观察者以观察给定uri指定的数据(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | -------------------- | ---- | ------------------------ | + | type | 只读 | string | 是 | 数据更改。 | + | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | + | callback | 只读 | AsyncCallback\ | 否 | 指示已注册的回调。 | + +- 返回值 + + 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\) + +- 接口说明 + + 获取给定URI指定的日期的MIME类型(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | ---------------------- | ---- | ------------------------ | + | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 返回与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>) + +- 接口说明 + + 获取支持的文件的MIME类型(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------------- | -------- | ------------------------------ | ---- | ---------------------------- | + | uri | 只读 | string | 是 | 指示要获取的文件的路径。 | + | mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 | + | callback | 只读 | AsyncCallback\> | 是 | 回调方法 | + +- 返回值 + + 返回匹配的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\) + +- 接口说明 + + 将引用数据功能的给定uri转换为规范化uri(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | ---------------------- | ---- | ----------------------- | + | uri | 只读 | string | 是 | 指示要规范化的uri对象。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 如果数据功能支持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\) + +- 接口说明 + + 将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | ---------------------- | ---- | ----------------------- | + | uri | 只读 | string | 是 | 指示要规范化的uri对象。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 如果反规范化成功,则返回反规范化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\) + +- 接口说明 + + 通知已注册的观察者uri指定的数据资源的更改(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | -------- | -------- | -------------------- | ---- | ------------------------ | + | uri | 只读 | string | 是 | 指示要操作的数据的路径。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 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\) + +- 接口说明 + + 将单个数据记录插入数据库(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | ------------ | -------- | ---------------------- | ---- | ------------------------------------------------------ | + | uri | 只读 | string | 是 | 指示要插入的数据的路径。 | + | valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 返回插入数据记录的索引。 + +- 示例 + +```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, callback: AsyncCallback\) + +- 接口说明 + + 将多个数据记录插入数据库(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | ------------ | -------- | ----------------------- | ---- | ------------------------ | + | uri | 只读 | string | 是 | 指示要插入的数据的路径。 | + | valuesBucket | 只读 | Array | 是 | 指示要插入的数据记录。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 返回插入的数据记录数。 + +- 示例 + +```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) + +- 接口说明 + + 将多个数据记录插入数据库(Promise形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | ------------ | -------- | ----------------------- | ---- | ------------------------ | + | uri | 只读 | string | 是 | 指示要插入的数据的路径。 | + | valuesBucket | 只读 | Array | 是 | 指示要插入的数据记录。 | + +- 返回值 + + 返回插入的数据记录数。 + +- 示例 + +```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\) + +- 接口说明 + + 从数据库中删除一个或多个数据记录(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ | + | uri | 只读 | string | 是 | 指示要删除的数据的路径。 | + | valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 返回已删除的数据记录数。 + +- 示例 + +```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\) + +- 接口说明 + + 更新数据库中的数据记录(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ | + | uri | 只读 | string | 是 | 指示要更新的数据的路径。 | + | valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 | + | predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 返回更新的数据记录数。 + +- 示例 + +```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\, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\) + +- 接口说明 + + 查询数据库中的数据(callback形式) + +- 参数描述 + + | 名称 | 读写属性 | 类型 | 必填 | 描述 | + | ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ | + | uri | 只读 | string | 是 | 指示要查询的数据的路径。 | + | columns | 只读 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 | + | predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | + | callback | 只读 | AsyncCallback\ | 是 | 回调方法 | + +- 返回值 + + 返回查询结果 + +- 示例 + +```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\, 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 diff --git a/zh-cn/application-dev/reference/apis/js-apis-featureAbility.md b/zh-cn/application-dev/reference/apis/js-apis-featureAbility.md index 5938d6095e786538412684ff62089fcecaf05db7..1843d620b982c6f8bf5d075f8fe1371083be3b46 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-featureAbility.md +++ b/zh-cn/application-dev/reference/apis/js-apis-featureAbility.md @@ -1,40 +1,38 @@ -# FeatureAbility模块(JS端SDK接口) +# FeatureAbility模块 -#### 支持设备 +## 支持设备 | API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 | | ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ | -| FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.startAbility(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.acquireDataAbilityHelper(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.hasWindowFocus(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.hasWindowFocus() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.startAbility(parameter: StartAbilityParameter): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.hasWindowFocus(callback: AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.hasWindowFocus(): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | | FeatureAbility.getWant(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.getWant() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.getContext() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.terminateSelf(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.terminateSelf() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| FeatureAbility.continueAbility(options: ContinueAbilityOptions, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.getWant(): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.getContext(): Context | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.terminateSelf(callback: AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.terminateSelf(): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.connectAbility(request: Want, options:ConnectOptions): number | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| FeatureAbility.disconnectAbility(connection: number): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -#### 权限列表 - -ohos.permission.RUNNING_LOCK permission - -#### 使用限制 +## 使用限制 FeatureAbility模块的接口只能在Page类型的Ability调用 -#### 导入模块 +## 导入模块 ``` import featureAbility from '@ohos.ability.featureAbility' ``` -#### FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\) +## FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\): void * 接口说明 @@ -44,56 +42,12 @@ import featureAbility from '@ohos.ability.featureAbility' | 名称 | 读写属性 | 类型 | 必填 | 描述 | | --------- | -------- | --------------------- | ---- | ------------------- | -| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability | -| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 | - -- StartAbilityParameter类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ------------------- | -------- | ------ | ---- | ---------------------------------- | -| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 | -| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 | - -- want类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | ------ | ---- | -------------------------- | -| deviceId | 只读 | string | 否 | 设备id | -| bundleName | 只读 | string | 否 | 捆绑包名称 | -| abilityName | 只读 | string | 否 | ability 名字 | -| uri | 只读 | string | 否 | 请求中URI的描述 | -| type | 只读 | string | 否 | 此文件中类型的说明 | -| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 | -| action | 只读 | string | 否 | 需求中对操作的描述 | -| parameters | 只读 | string | 否 | Want中WantParams对象的描述 | -| entities | 只读 | string | 否 | 对象中实体的描述 | - -* flags类型说明 - - | 名称 | 参数 | 描述 | - | ------------------------------------ | ---------- | ------------------------------------------------------------ | - | FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 | - | FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 | - | FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 | - | FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 | - | FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS | - | FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 | - | FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 | - | FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 | - | FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 | - | FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 | - | FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 | - | FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 | - | FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 | - | FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 | - | FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 | - | FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 | - -* 返回值 +| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability | +| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | - void +- 返回值 -* 示例 +- 示例 ```javascript import featureAbility from '@ohos.ability.featureAbility' @@ -104,7 +58,7 @@ featureAbility.startAbility( action: "", entities: [""], type: "", - flags: FLAG_AUTH_READ_URI_PERMISSION, + flags: FLAG_AUTH_READ_URI_PERMISSION, deviceId: "", bundleName: "com.example.startability", abilityName: "com.example.startability.MainAbility", @@ -117,7 +71,7 @@ featureAbility.startAbility( -#### FeatureAbility.startAbility(parameter: StartAbilityParameter) +## FeatureAbility.startAbility(parameter: StartAbilityParameter): Promise\ * 接口说明 @@ -125,57 +79,13 @@ featureAbility.startAbility( * startAbility参数描述 -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| --------- | -------- | --------------------- | ---- | ------------------- | -| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability | - -- StartAbilityParameter类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ------------------- | -------- | ------ | ---- | ---------------------------------- | -| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 | -| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 | - -- want类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | ------ | ---- | -------------------------- | -| deviceId | 只读 | string | 否 | 设备id | -| bundleName | 只读 | string | 否 | 捆绑包名称 | -| abilityName | 只读 | string | 否 | ability 名字 | -| uri | 只读 | string | 否 | 请求中URI的描述 | -| type | 只读 | string | 否 | 此文件中类型的说明 | -| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 | -| action | 只读 | string | 否 | 需求中对操作的描述 | -| parameters | 只读 | string | 否 | Want中WantParams对象的描述 | -| entities | 只读 | string | 否 | 对象中实体的描述 | - -* flags类型说明 - - | 名称 | 参数 | 描述 | - | ------------------------------------ | ---------- | ------------------------------------------------------------ | - | FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 | - | FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 | - | FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 | - | FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 | - | FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS | - | FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 | - | FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 | - | FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 | - | FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 | - | FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 | - | FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 | - | FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 | - | FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 | - | FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 | - | FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 | - | FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 | - -* 返回值 +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- | +| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability | - void +- 返回值 -* 示例 +- 示例 ```javascript import featureAbility from '@ohos.ability.featureAbility' @@ -200,7 +110,7 @@ featureAbility.startAbility( -#### FeatureAbility.acquireDataAbilityHelper(uri: string) +## FeatureAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper * 接口说明 @@ -208,13 +118,15 @@ featureAbility.startAbility( * 参数描述 - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ---- | -------- | ------ | ---- | ---------------------- | - | uri | 只读 | string | 是 | 指示要打开的文件的路径 | +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---- | -------- | ------ | ---- | ---------------------- | +| uri | 只读 | string | 是 | 指示要打开的文件的路径 | * 返回值 - 返回dataAbilityHelper +| 类型 | 说明 | +| ----------------- | ------------------------------------------ | +| DataAbilityHelper | 用来协助其他Ability访问DataAbility的工具类 | * 示例 @@ -227,7 +139,7 @@ featureAbility.acquireDataAbilityHelper( -#### FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\) +## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\): void * 接口说明 @@ -237,54 +149,12 @@ featureAbility.acquireDataAbilityHelper( | 名称 | 读写属性 | 类型 | 必填 | 描述 | | --------- | -------- | ---------------------- | ---- | ------------------- | -| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability | -| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | - -- StartAbilityParameter类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ------------------- | -------- | ------ | ---- | ---------------------------------- | -| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 | -| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 | - -- want类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | ------ | ---- | -------------------------- | -| deviceId | 只读 | string | 否 | 设备id | -| bundleName | 只读 | string | 否 | 捆绑包名称 | -| abilityName | 只读 | string | 否 | ability 名字 | -| uri | 只读 | string | 否 | 请求中URI的描述 | -| type | 只读 | string | 否 | 此文件中类型的说明 | -| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 | -| action | 只读 | string | 否 | 需求中对操作的描述 | -| parameters | 只读 | string | 否 | Want中WantParams对象的描述 | -| entities | 只读 | string | 否 | 对象中实体的描述 | - -* flags类型说明 - - | 名称 | 参数 | 描述 | - | ------------------------------------ | ---------- | ------------------------------------------------------------ | - | FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 | - | FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 | - | FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 | - | FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 | - | FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS | - | FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 | - | FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 | - | FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 | - | FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 | - | FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 | - | FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 | - | FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 | - | FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 | - | FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 | - | FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 | - | FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 | +| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability | +| callback | 只读 | AsyncCallback\<[AbilityResult](#AbilityResult类型说明)> | 是 | 被指定的回调方法 | * 返回值 - 返回{@link AbilityResult} + [AbilityResult](#AbilityResult类型说明) * 示例 @@ -300,7 +170,7 @@ featureAbility.startAbilityForResult( flags: FLAG_AUTH_READ_URI_PERMISSION, deviceId: "", bundleName: "com.example.featureabilitytest", - abilityName: "com.example.startabilityforresulttest1.MainAbility", + abilityName: "com.example.featureabilitytest.MainAbility", uri:"" }, }, @@ -309,7 +179,7 @@ featureAbility.startAbilityForResult( -#### FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter) +## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter): Promise\ * 接口说明 @@ -317,55 +187,13 @@ featureAbility.startAbilityForResult( * startAbility参数描述 -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| --------- | -------- | --------------------- | ---- | ------------------- | -| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability | - -- StartAbilityParameter类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ------------------- | -------- | ------ | ---- | ---------------------------------- | -| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 | -| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 | - -- want类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | ------ | ---- | -------------------------- | -| deviceId | 只读 | string | 否 | 设备id | -| bundleName | 只读 | string | 否 | 捆绑包名称 | -| abilityName | 只读 | string | 否 | ability 名字 | -| uri | 只读 | string | 否 | 请求中URI的描述 | -| type | 只读 | string | 否 | 此文件中类型的说明 | -| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 | -| action | 只读 | string | 否 | 需求中对操作的描述 | -| parameters | 只读 | string | 否 | Want中WantParams对象的描述 | -| entities | 只读 | string | 否 | 对象中实体的描述 | - -* flags类型说明 - - | 名称 | 参数 | 描述 | - | ------------------------------------ | ---------- | ------------------------------------------------------------ | - | FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 | - | FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 | - | FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 | - | FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 | - | FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS | - | FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 | - | FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 | - | FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 | - | FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 | - | FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 | - | FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 | - | FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 | - | FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 | - | FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 | - | FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 | - | FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 | +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- | +| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 表示被启动的Ability | * 返回值 - 返回{@link AbilityResult} + [AbilityResult](#AbilityResult类型说明) * 示例 @@ -381,7 +209,7 @@ featureAbility.startAbilityForResult( flags: FLAG_AUTH_READ_URI_PERMISSION, deviceId: "", bundleName: "com.example.featureabilitytest", - abilityName: "com.example.startabilityforresulttest2.MainAbility", + abilityName: "com.example.featureabilitytest.MainAbility", uri:"", parameters: { @@ -404,7 +232,7 @@ featureAbility.startAbilityForResult( -#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\) +## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\): void * 接口说明 @@ -415,56 +243,11 @@ featureAbility.startAbilityForResult( | 名称 | 读写属性 | 类型 | 必填 | 描述 | | --------- | -------- | ------------- | ---- | ------------------- | -| parameter | 只读 | AbilityResult | 是 | 表示被启动的Ability | -| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 | - - -* AbilityResult类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | ------ | ---- | ------------------------------------------------------------ | -| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) | -| want | 只读 | Want | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 | - -- want类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | ------ | ---- | -------------------------- | -| deviceId | 只读 | string | 否 | 设备id | -| bundleName | 只读 | string | 否 | 捆绑包名称 | -| abilityName | 只读 | string | 否 | ability 名字 | -| uri | 只读 | string | 否 | 请求中URI的描述 | -| type | 只读 | string | 否 | 此文件中类型的说明 | -| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 | -| action | 只读 | string | 否 | 需求中对操作的描述 | -| parameters | 只读 | string | 否 | Want中WantParams对象的描述 | -| entities | 只读 | string | 否 | 对象中实体的描述 | - -* flags类型说明 - - | 名称 | 参数 | 描述 | - | ------------------------------------ | ---------- | ------------------------------------------------------------ | - | FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 | - | FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 | - | FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 | - | FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 | - | FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS | - | FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 | - | FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 | - | FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 | - | FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 | - | FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 | - | FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 | - | FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 | - | FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 | - | FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 | - | FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 | - | FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 | +| parameter | 只读 | [AbilityResult](#AbilityResult类型说明) | 是 | 表示被启动的Ability | +| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | * 返回值 - void - * 示例 ```javascript @@ -480,7 +263,7 @@ featureAbility.terminateSelfWithResult( flags: FLAG_AUTH_READ_URI_PERMISSION, deviceId: "", bundleName: "com.example.featureabilitytest", - abilityName: "com.example.finishwithresulttest1.MainAbility", + abilityName: "com.example.featureabilitytest.MainAbility", uri:"", parameters: { mykey0: 2222, @@ -499,7 +282,7 @@ featureAbility.terminateSelfWithResult( -#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult) +## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult): Promise\ * 接口说明 @@ -507,57 +290,12 @@ featureAbility.terminateSelfWithResult( * startAbility参数描述 -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| --------- | -------- | ------------- | ---- | ------------------- | -| parameter | 只读 | AbilityResult | 是 | 表示被启动的Ability | - - -* AbilityResult类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | ------ | ---- | ------------------------------------------------------------ | -| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) | -| want | 只读 | Want | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 | - -- want类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | ------ | ---- | -------------------------- | -| deviceId | 只读 | string | 否 | 设备id | -| bundleName | 只读 | string | 否 | 捆绑包名称 | -| abilityName | 只读 | string | 否 | ability 名字 | -| uri | 只读 | string | 否 | 请求中URI的描述 | -| type | 只读 | string | 否 | 此文件中类型的说明 | -| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 | -| action | 只读 | string | 否 | 需求中对操作的描述 | -| parameters | 只读 | string | 否 | Want中WantParams对象的描述 | -| entities | 只读 | string | 否 | 对象中实体的描述 | - -* flags类型说明 - - | 名称 | 参数 | 描述 | - | ------------------------------------ | ---------- | ------------------------------------------------------------ | - | FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 | - | FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 | - | FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 | - | FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 | - | FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS | - | FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 | - | FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 | - | FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 | - | FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 | - | FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 | - | FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 | - | FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 | - | FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 | - | FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 | - | FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 | - | FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 | +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | --------------------------------------- | ---- | ------------------- | +| parameter | 只读 | [AbilityResult](#AbilityResult类型说明) | 是 | 表示被启动的Ability | * 返回值 - void - * 示例 ```javascript @@ -573,7 +311,7 @@ featureAbility.terminateSelfWithResult( flags: FLAG_AUTH_READ_URI_PERMISSION, deviceId: "", bundleName: "com.example.featureabilitytest", - abilityName: "com.example.finishwithresulttest1.MainAbility", + abilityName: "com.example.featureabilitytest.MainAbility", uri:"", parameters: { mykey0: 2222, @@ -588,13 +326,13 @@ featureAbility.terminateSelfWithResult( }, } ).then((void) => { - console.info("==========================>terminateSelfWithResult=======================>"); + console.info("==========================>terminateSelfWithResult=======================>"); }); ``` -#### FeatureAbility.hasWindowFocus(callback: AsyncCallback\) +## FeatureAbility.hasWindowFocus(callback: AsyncCallback\): void * 接口说明 @@ -619,7 +357,7 @@ featureAbility.hasWindowFocus() -#### FeatureAbility.hasWindowFocus() +## FeatureAbility.hasWindowFocus(): Promise\ * 接口说明 @@ -627,7 +365,7 @@ featureAbility.hasWindowFocus() * 参数描述 - Null + 无 * 返回值 @@ -638,13 +376,13 @@ featureAbility.hasWindowFocus() ```javascript import featureAbility from '@ohos.ability.featureability'; featureAbility.hasWindowFocus().then((void) => { - console.info("==========================>hasWindowFocus=======================>"); + console.info("==========================>hasWindowFocus=======================>"); }); ``` -#### FeatureAbility.getWant(callback: AsyncCallback\) +## FeatureAbility.getWant(callback: AsyncCallback\) * 接口说明 @@ -658,8 +396,6 @@ featureAbility.hasWindowFocus().then((void) => { * 返回值 - void - * 示例 ```javascript @@ -669,7 +405,7 @@ featureAbility.getWant() -#### FeatureAbility.getWant() +## FeatureAbility.getWant(): void * 接口说明 @@ -677,12 +413,10 @@ featureAbility.getWant() * 参数描述 - Null + 无 * 返回值 - void - * 示例 ```javascript @@ -694,7 +428,7 @@ featureAbility.getWant().then((void) => { -#### FeatureAbility.getContext() +## FeatureAbility.getContext(): Context * 接口说明 @@ -714,7 +448,7 @@ context.getBundleName() -#### FeatureAbility.terminateSelf(callback: AsyncCallback\) +## FeatureAbility.terminateSelf(callback: AsyncCallback\): void * 接口说明 @@ -728,8 +462,6 @@ context.getBundleName() * 返回值 - void - * 示例 ```javascript @@ -739,7 +471,7 @@ featureAbility.terminateSelf() -#### FeatureAbility.terminateSelf() +## FeatureAbility.terminateSelf(): Promise\ * 接口说明 @@ -751,8 +483,6 @@ featureAbility.terminateSelf() * 返回值 -* void - * 示例 ```javascript @@ -761,7 +491,7 @@ featureAbility.terminateSelf().then((void) => { console.info("============= }); ``` -#### FeatureAbility.connectAbility(*request*: Want, *options*:ConnectOptions): number +## FeatureAbility.connectAbility(request: Want, options:ConnectOptions): number * 接口说明 @@ -790,10 +520,7 @@ featureAbility.terminateSelf().then((void) => { console.info("============= ```javascript import featureAbility from '@ohos.ability.featureAbility' -var mRemote; -var connId; function onConnectCallback(element, remote){ - mRemote = remote; console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy)); } function onDisconnectCallback(element){ @@ -815,7 +542,7 @@ var connId = featureAbility.connectAbility( ); ``` -#### FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback): void +## FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback\): void * 接口说明 @@ -826,20 +553,15 @@ var connId = featureAbility.connectAbility( | 名称 | 读写属性 | 类型 | 必填 | 描述 | | ---------- | -------- | ------------- | ---- | ------------------------------ | | connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID | -| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 | +| 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){ @@ -866,7 +588,7 @@ var result = featureAbility.disconnectAbility(connId, ); ``` -#### FeatureAbility.disconnectAbility(connection: number): Promise; +## FeatureAbility.disconnectAbility(connection: number): Promise\ * 接口说明 @@ -880,16 +602,11 @@ var result = featureAbility.disconnectAbility(connId, * 返回值 - 无 - * 示例 ```javascript import featureAbility from '@ohos.ability.featureAbility' -var mRemote; -var connId; function onConnectCallback(element, remote){ - mRemote = remote; console.log('ConnectAbility onConnect remote is proxy:' + (remote instanceof rpc.RemoteProxy)); } function onDisconnectCallback(element){ @@ -912,43 +629,75 @@ var connId = featureAbility.connectAbility( var result = await featureAbility.disconnectAbility(connId); ``` -#### FeatureAbility.continueAbility(options: ContinueAbilityOptions, callback: AsyncCallback); - -* 接口说明 - - 迁移一个ability到目标设备,并返回执行结果(callback形式) - -* startAbility参数描述 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------- | -------- | ---------------------- | ---- | ------------------- | -| options | 只读 | ContinueAbilityOptions | 是 | 表示被启动的Ability | -| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | - -- ContinueAbilityOptions类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | ------- | ---- | ----------------------------------------------------------- | -| deviceId | 只读 | string | 是 | 表示需要包含有关目标启动能力的信息 | -| reversible | 只读 | boolean | 是 | 是否支持回迁的标志,目前不支持该功能,为保留字段,可填false | - -* 示例 - -```javascript -import featureAbility from '@ohos.ability.featureAbility' - -async StartContinueAbility(deviceId) { - let continueAbilityOptions = { - reversible: false, - deviceId: deviceId, - } - function ContinueAbilityCallback(err, data) { - console.info("[Demo] ContinueAbilityCallback, result err = " + JSON.stringify(err)); - console.info("[Demo] ContinueAbilityCallback, result data= " + JSON.stringify(data)); - } - await featureAbility.continueAbility(continueAbilityOptions, ContinueAbilityCallback); - console.info('[Demo] featureAbility.StartContinueAbility end'); -} -this.StartContinueAbility(remoteDeviceId); //remoteDeviceId is acquired from DeviceManager -``` - +## AbilityResult类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | --------------------- | ---- | ------------------------------------------------------------ | +| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) | +| want | 只读 | [Want](#Want类型说明) | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 | + +## StartAbilityParameter类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------------------- | -------- | --------------------- | ---- | ------------------------------------------------------------ | +| want | 只读 | [Want](#Want类型说明) | 是 | 表示需要包含有关目标启动能力的信息。 | +| abilityStartSetting | 只读 | {[key: string]: any} | 否 | 表示能力的特殊属性,当开发者启动能力时,该属性可以作为调用中的输入参数传递。 | + +## Want类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----------- | -------- | -------------------- | ---- | ------------------------------------------------------------ | +| deviceId | 只读 | string | 否 | 表示运行指定Ability的设备ID。 | +| bundleName | 只读 | string | 否 | 表示包描述。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 | +| abilityName | 只读 | string | 否 | 表示待启动的Ability名称。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 | +| uri | 只读 | string | 否 | 表示Uri描述。如果在Want中指定了Uri,则Want将匹配指定的Uri信息,包括scheme, schemeSpecificPart, authority和path信息。 | +| type | 只读 | string | 否 | 表示MIME type类型描述,比如:"text/plain" 、 "image/*"等。 | +| flags | 只读 | number | 否 | 表示处理Want的方式。默认传数字,具体参考:[flags说明](#flags说明)。 | +| action | 只读 | string | 否 | 表示action选项描述。 | +| parameters | 只读 | {[key: string]: any} | 否 | 表示WantParams描述。 | +| entities | 只读 | Array\ | 否 | 表示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 | 悬浮窗。 | diff --git a/zh-cn/application-dev/reference/apis/js-apis-notification.md b/zh-cn/application-dev/reference/apis/js-apis-notification.md index 1dd1d6fe2d050b8a04e8b591397606853769ec52..129fcc1d7719c348d83c3918f358b1a606d6de0a 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-notification.md +++ b/zh-cn/application-dev/reference/apis/js-apis-notification.md @@ -1,1885 +1,3205 @@ -# Notification模块(JS端SDK接口) - -#### 支持设备 - -| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | -| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -| Notification.publish(request: NotificationRequest, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.publish(request: NotificationRequest) | 支持 | 支持 | 支持 | 支持 | -| Notification.cancel(id: number, label: string, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.cancel(id:number, label?:string) | 支持 | 支持 | 支持 | 支持 | -| Notification.cancel(id: number, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.cancelAll(callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.cancelAll() | 支持 | 支持 | 支持 | 支持 | -| Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.addSlot(slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 | -| Notification.addSlot(type: SlotType, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.addSlot(type: SlotType) | 支持 | 支持 | 支持 | 支持 | -| Notification.addSlots(slots: Array, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.addSlots(slots: Array) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlot(slotType: SlotType, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlots(callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlots() | 支持 | 支持 | 支持 | 支持 | -| Notification.removeSlot(slotType: SlotType, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.removeSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 | -| Notification.removeAllSlots(callback: AsyncCallback): void | 支持 | 支持 | 支持 | 支持 | -| Notification.removeAllSlots(): Promise | 支持 | 支持 | 支持 | 支持 | -| Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | -| Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.unsubscribe(subscriber: NotificationSubscriber) | 支持 | 支持 | 支持 | 支持 | -| Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.enableNotification(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 | -| Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.isNotificationEnabled(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | -| Notification.isNotificationEnabled(callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.isNotificationEnabled() | 支持 | 支持 | 支持 | 支持 | -| Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.displayBadge(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 | -| Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.isBadgeDisplayed(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | -| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlotsByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.getSlotNumByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | -| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey) | 支持 | 支持 | 支持 | 支持 | -| Notification.remove(hashCode: string, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.remove(hashCode: string) | 支持 | 支持 | 支持 | 支持 | -| Notification.removeAll(bundle: BundleOption, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.removeAll(callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.removeAll(bundle?: BundleOption) | 支持 | 支持 | 支持 | 支持 | -| Notification.getAllActiveNotifications(callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | -| Notification.getAllActiveNotifications() | 支持 | 支持 | 支持 | 支持 | -| Notification.getActiveNotificationCount(callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| Notification.getActiveNotificationCount() | 支持 | 支持 | 支持 | 支持 | -| Notification.getActiveNotifications(callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | -| Notification.getActiveNotifications() | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getWantAgent(info: WantAgentInfo): Promise | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getBundleName(agent: WantAgent): Promise | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getUid(agent: WantAgent, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getUid(agent: WantAgent): Promise | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getWant(agent: WantAgent, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| WantAgent.getWant(agent: WantAgent): Promise | 支持 | 支持 | 支持 | 支持 | -| WantAgent.cancel(agent: WantAgent, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| WantAgent.cancel(agent: WantAgent): Promise | 支持 | 支持 | 支持 | 支持 | -| WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback) | 支持 | 支持 | 支持 | 支持 | -| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback) | 支持 | 支持 | 支持 | 支持 | -| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise | 支持 | 支持 | 支持 | 支持 | - -#### 权限列表 - -无 - -#### 通知接口 - -#### 导入模块 - -```js -import notify from '@ohos.notification'; -``` - -#### Notification.publish(request: NotificationRequest, callback: AsyncCallback) - -- 接口说明 - - 发布通知(callback形式) - -- publish参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------- | -------- | ------------------- | ---- | ------------------------------------------- | -| request | 只读 | NotificationRequest | 是 | 设置要发布通知内容的NotificationRequest对象 | -| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 | - -- NotificationRequest类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------------- | -------- | ------------------------------- | ---- | -------------------------- | -| content | 读、写 | NotificationContent | 是 | 通知内容 | -| id | 读、写 | number | 否 | 通知ID | -| slotType | 读、写 | SlotType | 否 | 通道类型 | -| isOngoing | 读、写 | boolean | 否 | 是否进行时通知 | -| isUnremovable | 读、写 | boolean | 否 | 是否可移除 | -| deliveryTime | 读、写 | number | 否 | 通知发送时间 | -| tapDismissed | 读、写 | boolean | 否 | 通知是否自动清除 | -| autoDeletedTime | 读、写 | number | 否 | 自动清除的时间 | -| wantAgent | 读、写 | WantAgent | 否 | 点击跳转的WantAgent | -| extraInfo | 读、写 | {[key: string]: any} | 否 | 扩展参数 | -| color | 读、写 | number | 否 | 通知背景颜色 | -| colorEnabled | 读、写 | boolean | 否 | 通知背景颜色是否使能 | -| isAlertOnce | 读、写 | boolean | 否 | 设置是否仅有一次此通知警报 | -| isStopwatch | 读、写 | boolean | 否 | 是否显示已用时间 | -| isCountDown | 读、写 | boolean | 否 | 是否显示倒计时时间 | -| isFloatingIcon | 读、写 | boolean | 否 | 是否显示状态栏图标 | -| isFloatingIcon | 读、写 | boolean | 否 | 是否显示状态栏图标 | -| label | 读、写 | string | 否 | 通知标签 | -| badgeIconStyle | 读、写 | number | 否 | 通知角标类型 | -| showDeliveryTime | 读、写 | boolean | 否 | 是否显示分发时间 | -| actionButtons | 读、写 | Array | 否 | 通知按钮,最多两个按钮 | -| smallIcon | 读、写 | PixelMap | 否 | 通知小图标 | -| largeIcon | 读、写 | PixelMap | 否 | 通知大图标 | -| creatorBundleName | 只读 | string | 否 | 创建通知的包名 | -| creatorUid | 只读 | number | 否 | 创建通知的UID | -| creatorPid | 只读 | number | 否 | 创建通知的PID | -| hashCode | 只读 | string | 否 | 通知唯一标识 | -| classification | 读、写 | string | 否 | 通知分类 | - -NotificationContent类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | ---------------------------- | ---- | -------------- | -| contentType | 读、写 | ContentType | 是 | 通知内容类型 | -| normal | 读、写 | NotificationBasicContent | 否 | 通知基本内容 | -| longText | 读、写 | NotificationLongTextContent | 否 | 通知长文本内容 | -| multiLine | 读、写 | NotificationMultiLineContent | 否 | 通知多行内容 | - -- ContentType类型说明 - -| 名称 | 读写属性 | 类型 | 描述 | -| --------------------------------- | -------- | ----------- | ---------------- | -| NOTIFICATION_CONTENT_BASIC_TEXT | 只读 | ContentType | 普通类型通知 | -| NOTIFICATION_CONTENT_LONG_TEXT | 只读 | ContentType | 长文本类型通知 | -| NOTIFICATION_CONTENT_PICTURE | 只读 | ContentType | 图片类型通知 | -| NOTIFICATION_CONTENT_CONVERSATION | 只读 | ContentType | 社交类型通知 | -| NOTIFICATION_CONTENT_MULTILINE | 只读 | ContentType | 多行文本类型通知 | - -- NotificationBasicContent类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------------- | -------- | ------ | ---- | -------------------------------- | -| title | 读、写 | string | 是 | 通知标题 | -| text | 读、写 | string | 是 | 通知内容 | -| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | - -- NotificationLongTextContent类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------------- | -------- | ------ | ---- | -------------------------------- | -| title | 读、写 | string | 是 | 通知标题 | -| text | 读、写 | string | 是 | 通知内容 | -| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | -| longText | 读、写 | string | 是 | 通知的长文本 | -| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 | -| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 | - -- NotificationMultiLineContent类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------------- | -------- | ------------- | ---- | -------------------------------- | -| title | 读、写 | string | 是 | 通知标题 | -| text | 读、写 | string | 是 | 通知内容 | -| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | -| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 | -| longTitle | 读、写 | string | 是 | 通知展开时的标题 | -| lines | 读、写 | Array | 是 | 通知的多行文本 | - -- NotificationPictureContent类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------------- | -------- | -------------- | ---- | -------------------------------- | -| title | 读、写 | string | 是 | 通知标题 | -| text | 读、写 | string | 是 | 通知内容 | -| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | -| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 | -| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 | -| picture | 读、写 | image.PixelMap | 是 | 通知的图片内容 | - -- NotificationActionButton类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------------------- | -------- | ----------------------------------------------- | ---- | ------------------------- | -| title | 读、写 | string | 是 | 按钮标题 | -| wantAgent | 读、写 | wantAgent | 是 | 点击按钮时触发的WantAgent | -| extras | 读、写 | Array | 否 | 按钮扩展信息 | -| icon | 读、写 | image.PixelMap | 否 | 按钮图标 | -| userInput8+ | 读、写 | [NotificationUserInput](#NotificationUserInput) | 否 | 用户输入对象实例 | - -## NotificationUserInput8+ - -用户输入对象。 - - -### 属性 - -| 名称 | 参数类型 | 可读 | 可写 | 说明 | -| -------- | -------- | ---- | ---- | ----------------------------- | -| inputKey | string | 是 | 是 | 用户输入时用于标识此输入的key | - - - -- 返回值 - - 返回值为void - -- 示例 - -```js -//publish回调 -function publishCallback(err) { - console.info("==========================>publishCallback=======================>"); -} -//通知Request对象 -var notificationRequest = { - id: 1, - content: { - contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, - normal: { - title: "test_title", - text: "test_text", - additionalText: "test_additionalText" - } - } -} -Notification.publish(notificationRequest, publishCallback) -``` - - - -#### Notification.publish(request: NotificationRequest) - -- 接口说明 - - 发布通知(Promise形式) - -- 返回值 - - 返回值为Promise<**void**> - -- 示例 - -```js -//通知Request对象 -var notificationRequest = { - notificationId: 1, - content: { - contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, - normal: { - title: "test_title", - text: "test_text", - additionalText: "test_additionalText" - } - } -} -Notification.publish(notificationRequest).then((void) => { - console.info("==========================>publishCallback=======================>"); -}); - -``` - - - -#### Notification.cancel(id: number, label: string, callback: AsyncCallback) - -- 接口说明 - - 取消与指定id和label相匹配的已发布通知(callback形式) - -- cancel参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------- | ---- | -------------------- | - | id | 只读 | number | 是 | 通知ID | - | lable | 只读 | string | 是 | 通知标签 | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- 返回值 - - 返回值为void - -- 示例 - -```js -//cancel回调 -function cancelCallback(err) { - console.info("==========================>cancelCallback=======================>"); -} -Notification.cancel(0, "label", cancelCallback) -``` - - - -#### Notification.cancel(id:number, label?:string) - -- 接口说明 - - 取消与指定id相匹配的已发布通知,label可以指定也可以不指定(Promise形式) - -- cancel参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ----- | -------- | ------ | ---- | -------- | - | id | 只读 | number | 是 | 通知ID | - | lable | 只读 | string | 是 | 通知标签 | - -- 返回值 - - 返回值为Promise<**void**> - -- 示例 - -```js -Notification.cancel(0).then((void) => { - console.info("==========================>cancelCallback=======================>"); -}); -``` - - - -#### Notification.cancel(id: number, callback: AsyncCallback) - -- 接口说明 - - 取消与指定id相匹配的已发布通知(callback形式) - -- cancel参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------- | ---- | -------------------- | - | id | 只读 | number | 是 | 通知ID | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- 返回值 - - 返回值为void - -- 示例 - -```js -//cancel回调 -function cancelCallback(err) { - console.info("==========================>cancelCallback=======================>"); -} -Notification.cancel(0, cancelCallback) -``` - - - -#### Notification.cancelAll(callback: AsyncCallback) - -- 接口说明 - - 取消所有已发布的通知(callback形式) - -- cancelAll参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- 返回值 - - 返回值为void - -- 示例 - -```js -//cancel回调 -function cancelAllback(err) { - console.info("==========================>cancelAllback=======================>"); -} -Notification.cancelAll(cancelCallback) -``` - - - -#### Notification.cancelAll() - -- 接口说明 - - 取消所有已发布的通知(callback形式) - -- 参数描述 - - 无参数 - -- 返回值 - - 返回值为void - -- 示例 - -```js -Notification.cancelAll().then((void) => { - console.info("==========================>cancelAllback=======================>"); -}); -``` - -#### Notification.addSlot(type: SlotType, callback: AsyncCallback) - -- 接口说明 - - 创建通知通道(callback形式) - -- addSlot参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------- | ---- | ---------------------- | - | type | 只读 | SlotType | 是 | 要创建的通知通道的类型 | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- SlotType类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------------------- | -------- | -------- | ---- | -------- | -| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 | -| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 | -| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 | -| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 | - -* 返回值 - - 返回值为void - -* 示例 - -```js -//addslot回调 -function addSlotCallBack(err) { - console.info("==========================>addSlotCallBack=======================>"); -} -Notification.addSlot(SOCIAL_COMMUNICATION, addSlotCallBack) -``` - - - -#### Notification.addSlot(type: SlotType) - -- 接口说明 - - 创建通知通道(Promise形式) - -- addSlot参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | ---- | -------- | -------- | ---- | ---------------------- | - | type | 只读 | SlotType | 是 | 要创建的通知通道的类型 | - -- 返回值 - - 返回值为Promise<**void**> - -- 示例 - -```js -Notification.addSlot(SOCIAL_COMMUNICATION).then((void) => { - console.info("==========================>addSlotCallback=======================>"); -}); -``` - -#### Notification.getSlot(slotType: SlotType, callback: AsyncCallback) - -- 接口说明 - - 获取一个通知通道(callback形式) - -- getSlot参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------------------- | ---- | ----------------------------------------------------------- | - | slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- 返回值 - - 返回值为void - -- 示例 - -```js -//getSlot回调 -function getSlotCallback(err,data) { - console.info("==========================>getSlotCallback=======================>"); -} -var slotType = SOCIAL_COMMUNICATION; -Notification.getSlot(slotType, getSlotCallback) -``` - - - -#### Notification.getSlot(slotType) - -- 接口说明 - - 获取一个通知通道(Promise形式) - -* getSlot参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | -------- | ---- | ----------------------------------------------------------- | - | slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | - -* 返回值 - - 返回值为Promise - -* 示例 - -```js -var slotType = SOCIAL_COMMUNICATION; -Notification.getSlot(slotType).then((data) => { - console.info("==========================>getSlotCallback=======================>"); -``` - - - -#### Notification.getSlots(callback: AsyncCallback>) - -- 接口说明 - - 获取此应用程序的所有通知通道(callback形式) - -- getSlots参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- 返回值 - - 返回值为void - -- 示例 - -```js -//getSlots回调 -function getSlotsCallback(err,data) { - console.info("==========================>getSlotsCallback=======================>"); -} -Notification.getSlots(getSlotsCallback) -``` - - - -#### Notification.getSlots() - -- 接口说明 - - 获取此应用程序的所有通知通道(Promise形式) - -- getSlots参数描述 - - 无参数 - -- 返回值 - - 返回值为Promise> - -- 示例 - -```js -Notification.getSlots().then((data) => { - console.info("==========================>getSlotsCallback=======================>"); -``` - - - -#### Notification.removeSlot(slotType: SlotType, callback: AsyncCallback) - -- 接口说明 - - 根据通知通道类型删除创建的通知通道(callback形式) - -- removeSlot参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------- | ---- | ----------------------------------------------------------- | - | SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- - - 返回值为void - -- 示例 - -```js -//removeSlot回调 -function removeSlotCallback(err) { - console.info("==========================>removeSlotCallback=======================>"); -} -var slotType = SOCIAL_COMMUNICATION; -Notification.removeSlot(slotType,removeSlotCallback) -``` - - - -#### Notification.removeSlot(slotType: SlotType) - -- 接口说明 - - 根据通知通道类型删除创建的通知通道(Promise形式) - -- removeSlot参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | -------- | ---- | ----------------------------------------------------------- | - | SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | - -- - - 返回值为Promise<**void**> - -- 示例 - -```js -var slotType = SOCIAL_COMMUNICATION; -Notification.removeSlot(slotType).then((void) => { - console.info("==========================>removeSlotCallback=======================>"); -``` - - - -#### Notification.removeAllSlots(callback: AsyncCallback) - -- 接口说明 - - 删除所有通知通道(callback形式) - -- removeAllSlots参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback | 是 | 表示被指定的回调方法 | - -- - - 返回值为void - -- 示例 - -```js -function removeAllCallBack(err) { - console.info("================>removeAllCallBack=======================>"); -} -Notification.removeAllSlots(removeAllCallBack) -``` - - - -#### Notification.removeAllSlots() - -- 接口说明 - - 删除所有通知通道(Promise形式) - -- removeAllSlots参数描述 - - 参数无 - -- - - 返回值为Promise<**void**> - -- 示例 - -```js - -Notification.removeAllSlots().then((void) => { - console.info("==========================>removeAllCallBack=======================>"); -}); -``` - -#### Notification.getAllActiveNotifications(callback: AsyncCallback>) - -- 接口说明 - - 获取活动通知(Callback形式) - -- getAllActiveNotifications参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ----------------------------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback> | 是 | 获取活动通知回调函数 | - -- - - 返回值为void - -- 示例 - -```js -function getAllActiveNotificationsCallback(err, data) { - console.info("==========================>getAllActiveNotificationsCallback=======================>"); -} - -Notification.getAllActiveNotifications(getAllActiveNotificationsCallback); -``` - - - -#### Notification.getAllActiveNotifications() - -- 接口说明 - - 获取活动通知(Promise形式) - -- getAllActiveNotifications参数描述 - - 无 - -- - - 返回值为Promise> - -- 示例 - -```js -Notification.getAllActiveNotifications().then((data) => { - console.info("==========================>getAllActiveNotificationsCallback=======================>"); -}); -``` - - - -#### Notification.getActiveNotificationCount(callback: AsyncCallback<**number**>) - -- 接口说明 - - 获取当前应用的活动通知数(Callback形式) - -- getActiveNotificationCount参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ------------------------- | ---- | ---------------------- | - | callback | 只读 | AsyncCallback<**number**> | 是 | 获取活动通知数回调函数 | - -- - - 返回值为void - -- 示例 - -```js -function getActiveNotificationCountCallback(err, data) { - console.info("==========================>getActiveNotificationCountCallback=======================>"); -} - -Notification.getActiveNotificationCount(getActiveNotificationCountCallback); -``` - - - -#### Notification.getActiveNotificationCount() - -- 接口说明 - - 获取当前应用的活动通知数(Promise形式) - -- getActiveNotificationCount参数描述 - - 无 - -- - - 返回值为Promise<**number**> - -- 示例 - -```js -Notification.getActiveNotificationCount().then((data) => { - console.info("==========================>getActiveNotificationCountCallback=======================>"); -}); -``` - - - -#### Notification.getActiveNotifications(callback: AsyncCallback>) - -- 接口说明 - - 获取当前应用的活动通知(Callback形式) - -- getActiveNotifications参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | ----------------------------------------- | ---- | ------------------------------ | - | callback | 只读 | AsyncCallback> | 是 | 获取当前应用的活动通知回调函数 | - -- - - 返回值为void - -- 示例 - -```js -function getActiveNotificationsCallback(err, data) { - console.info("==========================>getActiveNotificationsCallback=======================>"); -} - -Notification.getActiveNotifications(getActiveNotificationsCallback); -``` - - - -#### Notification.getActiveNotifications() - -- 接口说明 - - 获取当前应用的活动通知(Promise形式) - -- getActiveNotifications参数描述 - - 无 - -- - - 返回值为Promise> - -- 示例 - -```js -Notification.getActiveNotifications().then((data) => { - console.info("==========================>getActiveNotificationsCallback=======================>"); -}); -``` - - - -## notification.setDoNotDisturbDate8+ - -setDoNotDisturbDate(date:DoNotDisturbDate,callback: AsyncCallback<void>): void - -设置免打扰时间。 - -需要权限ohos.permission.NOTIFICATION_CONTROLLER - -- 参数: - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | ------------------------------------- | ---- | ---------------------- | - | date | [DoNotDisturbDate](#DoNotDisturbDate) | 是 | 免打扰时间选项 | - | callback | AsyncCallback<void> | 是 | 设置免打扰时间回调函数 | - -- 示例: - - ``` - function setDoNotDisturbDateCallback(err) { - console.info("setDoNotDisturbDateCallback"); - } - - var doNotDisturbDate = { - type : notification.DoNotDisturbType.TYPE_ONCE, - begin : new Date(), - end : new Date(2021, 11, 15, 18, 0) - } - - notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback); - ``` - -## notification.setDoNotDisturbDate8+ - -setDoNotDisturbDate(date:DoNotDisturbDate): Promise\ - -设置免打扰时间。 - -需要权限ohos.permission.NOTIFICATION_CONTROLLER - -- 参数: - - | 参数名 | 类型 | 必填 | 说明 | - | ------ | ------------------------------------- | ---- | -------------- | - | date | [DoNotDisturbDate](#DoNotDisturbDate) | 是 | 免打扰时间选项 | - -- 返回值: - - | 类型 | 说明 | - | --------------- | --------------- | - | Promise\ | Promise方式返回 | - -- 示例: - - ``` - var doNotDisturbDate = { - type : notification.DoNotDisturbType.TYPE_ONCE, - begin : new Date(), - end : new Date(2021, 11, 15, 18, 0) - } - - notification.setDoNotDisturbDate(doNotDisturbDate).then(() => { - console.info("setDoNotDisturbDatePromise"); - }); - ``` - - - -## notification.getDoNotDisturbDate8+ - -getDoNotDisturbDate(callback: AsyncCallback\): void - -查询免打扰时间。 - -需要权限ohos.permission.NOTIFICATION_CONTROLLER - -- 参数: - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | ---------------------------------------------------------- | ---- | ---------------------- | - | callback | AsyncCallback<[DoNotDisturbDate](#DoNotDisturbDate)> | 是 | 查询免打扰时间回调函数 | - - -- 示例: - - ``` - function getDoNotDisturbDateCallback(err,data) { - console.info("getDoNotDisturbDateCallback"); - } - - notification.getDoNotDisturbDate(getDoNotDisturbDateCallback); - ``` - - - -## notification.getDoNotDisturbDate8+ - -getDoNotDisturbDate(): Promise<DoNotDisturbDate> - -查询免打扰时间。 - -需要权限ohos.permission.NOTIFICATION_CONTROLLER - -- 返回值: - - | 类型 | 说明 | - | ---------------------------------------------------- | ----------------------------- | - | Promise<[DoNotDisturbDate](#DoNotDisturbDate)> | Promise方式返回的免打时间信息 | - -- 示例: - - ``` - notification.getDoNotDisturbDate().then((data) => { - console.info("getDoNotDisturbDatePromise"); - }); - ``` - - - -## notification.supportDoNotDisturbMode8+ - -supportDoNotDisturbMode(callback: AsyncCallback\): void - -查询是否支持勿扰模式功能。 - -需要权限ohos.permission.NOTIFICATION_CONTROLLER - -- 参数: - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | ------------------------- | ---- | -------------------------------- | - | callback | AsyncCallback\; | 是 | 查询是否支持勿扰模式功能回调函数 | - -- 示例: - - ``` - function supportDoNotDisturbModeCallback(err,data) { - console.info("supportDoNotDisturbModeCallback"); - } - - notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback); - ``` - - - -## notification.supportDoNotDisturbMode8+ - -supportDoNotDisturbMode(): Promise\ - -查询是否支持勿扰模式功能。 - -需要权限ohos.permission.NOTIFICATION_CONTROLLER - -- 返回值: - - | 类型 | 说明 | - | ------------------ | ------------------------- | - | Promise\ | Promise方式返回的支持结果 | - - -- 示例: - - ``` - notification.supportDoNotDisturbMode().then((data) => { - console.info("supportDoNotDisturbModePromise"); - }); - ``` - - - -## DoNotDisturbType8+ - -免打扰时间类型。 - -| 名称 | 默认值 | 说明 | -| ------------ | ------ | -------------------------------------- | -| TYPE_NONE | 0 | 非通知勿扰类型 | -| TYPE_ONCE | 1 | 设置时间段内执行一次勿扰 | -| TYPE_DAILY | 2 | 设置时间段(只看小时和分钟)每天执行勿扰 | -| TYPE_CLEARLY | 3 | 以设置时间段(明确年月日时分)执行勿扰 | - - - -## DoNotDisturbDate8+ - -免打扰时间。 - - -### 属性 - -| 名称 | 参数类型 | 可读 | 可写 | 说明 | -| ----- | ------------------------------------- | ---- | ---- | ------------------------ | -| type | [DoNotDisturbType](#DoNotDisturbType) | 是 | 是 | 指定免打扰设置的时间类型 | -| begin | Date | 是 | 是 | 指定免打扰设置的起点时间 | -| end | Date | 是 | 是 | 指定免打扰设置的结束时间 | - - - -#### WantAgent接口 - -#### 导入模块 - -```js -import WantAgent from '@ohos.wantAgent'; -``` - -#### WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback) - -- 接口说明 - - 创建WantAgent(callback形式) - -- getWantAgent参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------- | -------- | ------------------------ | ---- | ----------------------- | -| info | 只读 | WantAgentInfo | 是 | WantAgent信息 | -| callback | 只读 | AsyncCallback | 是 | 创建WantAgent的回调方法 | - -- WantAgentInfo类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------------- | -------- | ------------------------------- | ---- | ---------------------- | -| wants | 读、写 | Array | 是 | 将被执行的动作列表 | -| operationType | 读、写 | wantAgent.OperationType | 是 | 动作类型 | -| requestCode | 读、写 | number | 是 | 使用者定义的一个私有值 | -| wantAgentFlags | 读、写 | Array | 否 | 动作执行属性 | -| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 | - -- - WantAgentFlags类型说明 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ------------------- | -------- | ---- | ---- | ------------------------------------------------------------ | -| ONE_TIME_FLAG | 只读 | enum | 否 | WantAgent仅能使用一次 | -| NO_BUILD_FLAG | 只读 | enum | 否 | 如果描述WantAgent对象不存在,则不创建它,直接返回null | -| CANCEL_PRESENT_FLAG | 只读 | enum | 否 | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象 | -| UPDATE_PRESENT_FLAG | 只读 | enum | 否 | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据 | -| CONSTANT_FLAG | 只读 | enum | 否 | WantAgent是不可变的 | -| REPLACE_ELEMENT | 只读 | enum | 否 | 当前Want中的element属性可被WantAgent.trigger()中Want的element属性取代 | -| REPLACE_ACTION | 只读 | enum | 否 | 当前Want中的action属性可被WantAgent.trigger()中Want的action属性取代 | -| REPLACE_URI | 只读 | enum | 否 | 当前Want中的uri属性可被WantAgent.trigger()中Want的uri属性取代 | -| REPLACE_ENTITIES | 只读 | enum | 否 | 当前Want中的entities属性可被WantAgent.trigger()中Want的entities属性取代 | -| REPLACE_BUNDLE | 只读 | enum | 否 | 当前Want中的bundleName属性可被WantAgent.trigger()中Want的bundleName属性取代 | - -- OperationType类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------------- | -------- | ---- | ---- | ----------------------- | -| UNKNOWN_TYPE | 只读 | enum | 否 | 不识别的类型 | -| START_ABILITY | 只读 | enum | 否 | 开启一个有页面的Ability | -| START_ABILITIES | 只读 | enum | 否 | 开启多个有页面的Ability | -| START_SERVICE | 只读 | enum | 否 | 开启一个无页面的ability | -| SEND_COMMON_EVENT | 只读 | enum | 否 | 发送一个公共事件 | - -- - - 返回值为void - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) -``` - - - -#### WantAgent.getWantAgent(info: WantAgentInfo): Promise - -- 接口说明 - - 创建WantAgent(Promise形式) - -- getWantAgent参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---- | -------- | ------------- | ---- | ------------- | -| info | 只读 | WantAgentInfo | 是 | WantAgent信息 | - -- - - 返回值为Promise - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); -}); -``` - - - -#### WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback) - -- 接口说明 - - 获取WantAgent实例的包名(callback形式) - -- getBundleName参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------- | -------- | --------------------- | ---- | --------------------------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | -| callback | 只读 | AsyncCallback | 是 | 获取WantAgent实例的包名的回调方法 | - -- 返回值为void - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - WantAgent = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) - -//getBundleName回调 -function getBundleNameCallback(err, data) { - console.info("==========================>getBundleNameCallback=======================>"); -} -wantAgent.getBundleName(WantAgent, getBundleNameCallback) -``` - - - -#### WantAgent.getBundleName(agent: WantAgent): Promise - -- 接口说明 - - 获取WantAgent实例的包名(Promise形式) - -- getBundleName参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----- | -------- | --------- | ---- | ------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | - -- - - 返回值为Promise - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - WantAgent = data; -}); - -wantAgent.getBundleName(WantAgent).then((data) => { - console.info("==========================>getBundleNameCallback=======================>"); -}); -``` - - - -#### WantAgent.getUid(agent: WantAgent, callback: AsyncCallback) - -- 接口说明 - - 获取WantAgent实例的用户ID(callback形式) - -- getUid参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------- | -------- | --------------------- | ---- | ----------------------------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | -| callback | 只读 | AsyncCallback | 是 | 获取WantAgent实例的用户ID的回调方法 | - -- 返回值为void - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - WantAgent = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) - -//getUid回调 -function getUidCallback(err, data) { - console.info("==========================>getUidCallback=======================>"); -} -wantAgent.getUid(WantAgent, getUidCallback) -``` - - - -#### WantAgent.getUid(agent: WantAgent): Promise - -- 接口说明 - - 获取WantAgent实例的用户ID(Promise形式) - -- getUid参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----- | -------- | --------- | ---- | ------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | - -- - - 返回值为Promise - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - WantAgent = data; -}); - -wantAgent.getUid(WantAgent).then((data) => { - console.info("==========================>getUidCallback=======================>"); -}); -``` - - - -#### WantAgent.cancel(agent: WantAgent, callback: AsyncCallback) - -- 接口说明 - - 取消WantAgent实例(callback形式) - -- cancel参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| -------- | -------- | ------------------- | ---- | --------------------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | -| callback | 只读 | AsyncCallback | 是 | 取消WantAgent实例的回调方法 | - -- 返回值为void - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - WantAgent = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) - -//cancel回调 -function cancelCallback(err, data) { - console.info("==========================>cancelCallback=======================>"); -} -wantAgent.cancel(WantAgent, cancelCallback) -``` - - - -#### WantAgent.cancel(agent: WantAgent): Promise - -- 接口说明 - - 取消WantAgent实例(Promise形式) - -- cancel参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----- | -------- | --------- | ---- | ------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | - -- - - 返回值为Promise - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - WantAgent = data; -}); - -wantAgent.cancel(WantAgent).then((data) => { - console.info("==========================>cancelCallback=======================>"); -}); -``` - - - -#### WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback) - -- 接口说明 - - 主动激发WantAgent实例(callback形式) - -- trigger参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ----------- | -------- | --------------------------- | ---- | ------------------------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | -| triggerInfo | 只读 | TriggerInfo | 是 | TriggerInfo对象 | -| callback | 只读 | AsyncCallback | 是 | 主动激发WantAgent实例的回调方法 | - -- TriggerInfo类型说明 - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | -------------------- | ---- | ----------- | -| code | 读、写 | number | 是 | result code | -| want | 读、写 | Want | 否 | Want | -| permission | 读、写 | string | 否 | 权限定义 | -| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 | - -- 返回值为void -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - WantAgent = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) - -//cancel回调 -function triggerCallback(err, data) { - console.info("==========================>triggerCallback=======================>"); -} -wantAgent.trigger(WantAgent, triggerCallback) -``` - - - -#### WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback) - -- 接口说明 - - 判断两个WantAgent实例是否相等(callback形式) - -- equal参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | ---------------------- | ---- | --------------------------------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | -| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 | -| callback | 只读 | AsyncCallback | 是 | 判断两个WantAgent实例是否相等的回调方法 | - -- 返回值为void - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent1; -var WantAgent2; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - WantAgent1 = data; - WantAgent2 = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) - -//cancel回调 -function equalCallback(err, data) { - console.info("==========================>equalCallback=======================>"); -} -wantAgent.equal(WantAgent1, WantAgent1, equalCallback) -``` - - - -#### WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise - -- 接口说明 - - 判断两个WantAgent实例是否相等(Promise形式) - -- equal参数描述 - - -| 名称 | 读写属性 | 类型 | 必填 | 描述 | -| ---------- | -------- | --------- | ---- | ------------- | -| agent | 只读 | WantAgent | 是 | WantAgent对象 | -| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 | - -- - - 返回值为Promise - -- 示例 - -```js -import wantAgent from '@ohos.wantAgent'; -import { OperationType, Flags } from '@ohos.wantagent'; - -//wantAgent对象 -var WantAgent1; -var WantAgent2; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[Flags.UPDATE_PRESENT_FLAG] -} - -wantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - WantAgent = data; -}); - -wantAgent.equal(WantAgent1, WantAgent2).then((data) => { - console.info("==========================>equalCallback=======================>"); -}); -``` - - - -#### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Notification模块 + +## 支持设备 + +| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | +| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | +| Notification.publish(request: NotificationRequest, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.publish(request: NotificationRequest) | 支持 | 支持 | 支持 | 支持 | +| Notification.cancel(id: number, label: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.cancel(id:number, label?:string) | 支持 | 支持 | 支持 | 支持 | +| Notification.cancel(id: number, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.cancelAll(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.cancelAll() | 支持 | 支持 | 支持 | 支持 | +| Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.addSlot(slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 | +| Notification.addSlot(type: SlotType, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.addSlot(type: SlotType) | 支持 | 支持 | 支持 | 支持 | +| Notification.addSlots(slots: Array\, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.addSlots(slots: Array\) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlot(slotType: SlotType, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlots(callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlots() | 支持 | 支持 | 支持 | 支持 | +| Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.removeSlot(slotType: SlotType) | 支持 | 支持 | 支持 | 支持 | +| Notification.removeAllSlots(callback: AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | +| Notification.removeAllSlots(): Promise\ | 支持 | 支持 | 支持 | 支持 | +| Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | +| Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.unsubscribe(subscriber: NotificationSubscriber) | 支持 | 支持 | 支持 | 支持 | +| Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.enableNotification(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 | +| Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.isNotificationEnabled(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | +| Notification.isNotificationEnabled(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.isNotificationEnabled() | 支持 | 支持 | 支持 | 支持 | +| Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.displayBadge(bundle: BundleOption, enable: boolean) | 支持 | 支持 | 支持 | 支持 | +| Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.isBadgeDisplayed(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | +| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlotsByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.getSlotNumByBundle(bundle: BundleOption) | 支持 | 支持 | 支持 | 支持 | +| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.remove(bundle: BundleOption, notificationKey: NotificationKey) | 支持 | 支持 | 支持 | 支持 | +| Notification.remove(hashCode: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.remove(hashCode: string) | 支持 | 支持 | 支持 | 支持 | +| Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.removeAll(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.removeAll(bundle?: BundleOption) | 支持 | 支持 | 支持 | 支持 | +| Notification.getAllActiveNotifications(callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | +| Notification.getAllActiveNotifications() | 支持 | 支持 | 支持 | 支持 | +| Notification.getActiveNotificationCount(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.getActiveNotificationCount() | 支持 | 支持 | 支持 | 支持 | +| Notification.getActiveNotifications(callback: AsyncCallback>) | 支持 | 支持 | 支持 | 支持 | +| Notification.getActiveNotifications() | 支持 | 支持 | 支持 | 支持 | +| Notification.cancelGroup(groupName: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.cancelGroup(groupName: string) | 支持 | 支持 | 支持 | 支持 | +| Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.removeGroupByBundle(bundle: BundleOption, groupName: string) | 支持 | 支持 | 支持 | 支持 | +| Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.setDoNotDisturbDate(date: DoNotDisturbDate) | 支持 | 支持 | 支持 | 支持 | +| Notification.getDoNotDisturbDate(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.getDoNotDisturbDate() | 支持 | 支持 | 支持 | 支持 | +| Notification.supportDoNotDisturbMode(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| Notification.supportDoNotDisturbMode() | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getWantAgent(info: WantAgentInfo): Promise\ | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getBundleName(agent: WantAgent): Promise\ | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getUid(agent: WantAgent): Promise\ | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| WantAgent.getWant(agent: WantAgent): Promise\ | 支持 | 支持 | 支持 | 支持 | +| WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| WantAgent.cancel(agent: WantAgent): Promise\ | 支持 | 支持 | 支持 | 支持 | +| WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\) | 支持 | 支持 | 支持 | 支持 | +| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | +| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\ | 支持 | 支持 | 支持 | 支持 | + +## 权限列表 + +无 + +## 通知接口 + +## 导入模块 + +```js +import Notification from '@ohos.notification'; +``` + +## Notification.publish(request: NotificationRequest, callback: AsyncCallback\) + +- 接口说明 + + 发布通知(callback形式) + +- publish参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ------------------------------------------- | +| request | 只读 | NotificationRequest | 是 | 设置要发布通知内容的NotificationRequest对象 | +| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | + +- NotificationRequest类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----------------- | -------- | --------------------------------- | ---- | -------------------------- | +| content | 读、写 | NotificationContent | 是 | 通知内容 | +| id | 读、写 | number | 否 | 通知ID | +| slotType | 读、写 | SlotType | 否 | 通道类型 | +| isOngoing | 读、写 | boolean | 否 | 是否进行时通知 | +| isUnremovable | 读、写 | boolean | 否 | 是否可移除 | +| deliveryTime | 读、写 | number | 否 | 通知发送时间 | +| tapDismissed | 读、写 | boolean | 否 | 通知是否自动清除 | +| autoDeletedTime | 读、写 | number | 否 | 自动清除的时间 | +| wantAgent | 读、写 | WantAgent | 否 | 点击跳转的WantAgent | +| extraInfo | 读、写 | {[key: string]: any} | 否 | 扩展参数 | +| color | 读、写 | number | 否 | 通知背景颜色 | +| colorEnabled | 读、写 | boolean | 否 | 通知背景颜色是否使能 | +| isAlertOnce | 读、写 | boolean | 否 | 设置是否仅有一次此通知警报 | +| isStopwatch | 读、写 | boolean | 否 | 是否显示已用时间 | +| isCountDown | 读、写 | boolean | 否 | 是否显示倒计时时间 | +| isFloatingIcon | 读、写 | boolean | 否 | 是否显示状态栏图标 | +| label | 读、写 | string | 否 | 通知标签 | +| badgeIconStyle | 读、写 | number | 否 | 通知角标类型 | +| showDeliveryTime | 读、写 | boolean | 否 | 是否显示分发时间 | +| actionButtons | 读、写 | Array\ | 否 | 通知按钮,最多两个按钮 | +| smallIcon | 读、写 | PixelMap | 否 | 通知小图标 | +| largeIcon | 读、写 | PixelMap | 否 | 通知大图标 | +| creatorBundleName | 只读 | string | 否 | 创建通知的包名 | +| creatorUid | 只读 | number | 否 | 创建通知的UID | +| creatorPid | 只读 | number | 否 | 创建通知的PID | +| hashCode | 只读 | string | 否 | 通知唯一标识 | +| classification | 读、写 | string | 否 | 通知分类 | +| groupName | 读、写 | string | 否 | 组通知名称 | + +NotificationContent类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----------- | -------- | ---------------------------- | ---- | ------------------ | +| contentType | 读、写 | ContentType | 是 | 通知内容类型 | +| normal | 读、写 | NotificationBasicContent | 否 | 基本类型通知内容 | +| longText | 读、写 | NotificationLongTextContent | 否 | 长文本类型通知内容 | +| multiLine | 读、写 | NotificationMultiLineContent | 否 | 多行类型通知内容 | +| picture | 读、写 | NotificationPictureContent | 否 | 图片类型通知内容 | + +- ContentType类型说明 + +| 名称 | 读写属性 | 类型 | 描述 | +| --------------------------------- | -------- | ----------- | ---------------- | +| NOTIFICATION_CONTENT_BASIC_TEXT | 只读 | ContentType | 普通类型通知 | +| NOTIFICATION_CONTENT_LONG_TEXT | 只读 | ContentType | 长文本类型通知 | +| NOTIFICATION_CONTENT_PICTURE | 只读 | ContentType | 图片类型通知 | +| NOTIFICATION_CONTENT_CONVERSATION | 只读 | ContentType | 社交类型通知 | +| NOTIFICATION_CONTENT_MULTILINE | 只读 | ContentType | 多行文本类型通知 | + +- NotificationBasicContent类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------- | -------- | ------ | ---- | -------------------------------- | +| title | 读、写 | string | 是 | 通知标题 | +| text | 读、写 | string | 是 | 通知内容 | +| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | + +- NotificationLongTextContent类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------- | -------- | ------ | ---- | -------------------------------- | +| title | 读、写 | string | 是 | 通知标题 | +| text | 读、写 | string | 是 | 通知内容 | +| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | +| longText | 读、写 | string | 是 | 通知的长文本 | +| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 | +| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 | + +- NotificationMultiLineContent类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------- | -------- | --------------- | ---- | -------------------------------- | +| title | 读、写 | string | 是 | 通知标题 | +| text | 读、写 | string | 是 | 通知内容 | +| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | +| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 | +| longTitle | 读、写 | string | 是 | 通知展开时的标题 | +| lines | 读、写 | Array\ | 是 | 通知的多行文本 | + +- NotificationPictureContent类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------- | -------- | -------------- | ---- | -------------------------------- | +| title | 读、写 | string | 是 | 通知标题 | +| text | 读、写 | string | 是 | 通知内容 | +| additionalText | 读、写 | string | 是 | 通知次要内容,是对通知内容的补充 | +| briefText | 读、写 | string | 是 | 通知概要内容,是对通知内容的总结 | +| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 | +| picture | 读、写 | image.PixelMap | 是 | 通知的图片内容 | + +- SlotType类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------------- | -------- | -------- | ---- | -------- | +| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 | +| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 | +| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 | +| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 | + +- NotificationActionButton类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | --------------------- | ---- | ------------------------- | +| title | 读、写 | string | 是 | 按钮标题 | +| wantAgent | 读、写 | wantAgent | 是 | 点击按钮时触发的WantAgent | +| extras | 读、写 | Array\ | 否 | 按钮扩展信息 | +| icon | 读、写 | image.PixelMap | 否 | 按钮图标 | +| userInput | 读、写 | NotificationUserInput | 否 | 用户输入对象实例 | + +- NotificationUserInput类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ------ | ---- | ----------------------------- | +| inputKey | 读、写 | string | 是 | 用户输入时用于标识此输入的key | + + +- 返回值 + + void + +- 示例 + +```js +//publish回调 +function publishCallback(err) { + console.info("==========================>publishCallback=======================>"); +} +//通知Request对象 +var notificationRequest = { + id: 1, + content: { + contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, + normal: { + title: "test_title", + text: "test_text", + additionalText: "test_additionalText" + } + } +} +Notification.publish(notificationRequest, publishCallback) +``` + + + +## Notification.publish(request: NotificationRequest) + +- 接口说明 + + 发布通知(Promise形式) + +- 返回值 + + Promise\ + +- 示例 + +```js +//通知Request对象 +var notificationRequest = { + notificationId: 1, + content: { + contentType: notify.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, + normal: { + title: "test_title", + text: "test_text", + additionalText: "test_additionalText" + } + } +} +Notification.publish(notificationRequest).then((void) => { + console.info("==========================>publishCallback=======================>"); +}); + +``` + + + +## Notification.cancel(id: number, label: string, callback: AsyncCallback\) + +- 接口说明 + + 取消与指定id和label相匹配的已发布通知(callback形式) + +- cancel参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| id | 只读 | number | 是 | 通知ID | +| label | 只读 | string | 是 | 通知标签 | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//cancel回调 +function cancelCallback(err) { + console.info("==========================>cancelCallback=======================>"); +} +Notification.cancel(0, "label", cancelCallback) +``` + + + +## Notification.cancel(id:number, label?:string) + +- 接口说明 + + 取消与指定id相匹配的已发布通知,label可以指定也可以不指定(Promise形式) + +- cancel参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----- | -------- | ------ | ---- | -------- | +| id | 只读 | number | 是 | 通知ID | +| label | 只读 | string | 否 | 通知标签 | + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.cancel(0).then((void) => { + console.info("==========================>cancelCallback=======================>"); +}); +``` + + + +## Notification.cancel(id: number, callback: AsyncCallback\) + +- 接口说明 + + 取消与指定id相匹配的已发布通知(callback形式) + +- cancel参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| id | 只读 | number | 是 | 通知ID | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//cancel回调 +function cancelCallback(err) { + console.info("==========================>cancelCallback=======================>"); +} +Notification.cancel(0, cancelCallback) +``` + + + +## Notification.cancelAll(callback: AsyncCallback\) + +- 接口说明 + + 取消所有已发布的通知(callback形式) + +- cancelAll参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//cancel回调 +function cancelAllback(err) { + console.info("==========================>cancelAllback=======================>"); +} +Notification.cancelAll(cancelCallback) +``` + + + +## Notification.cancelAll() + +- 接口说明 + + 取消所有已发布的通知(Promise形式) + +- 参数描述 + + 无参数 + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.cancelAll().then((void) => { + console.info("==========================>cancelAllback=======================>"); +}); +``` + + + +## Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\) + +- 接口说明 + + 创建通知通道(callback形式) + +- addSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道对象 | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- NotificationSlot类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------------- | -------- | --------------- | ---- | ------------------------------------------ | +| type | 读、写 | SlotType | 是 | 通道类型 | +| level | 读、写 | number | 否 | 通知级别,不设置则根据通知渠道类型有默认值 | +| desc | 读、写 | string | 否 | 通知渠道描述信息 | +| badgeFlag | 读、写 | boolean | 否 | 是否显示角标 | +| bypassDnd | 读、写 | boolean | 否 | 置是否在系统中绕过免打扰模式 | +| lockscreenVisibility | 读、写 | boolean | 否 | 在锁定屏幕上显示通知的模式 | +| vibrationEnabled | 读、写 | boolean | 否 | 是否可振动 | +| sound | 读、写 | string | 否 | 通知提示音 | +| lightEnabled | 读、写 | boolean | 否 | 是否闪灯 | +| lightColor | 读、写 | number | 否 | 通知灯颜色 | +| vibrationValues | 读、写 | Array\ | 否 | 通知振动样式 | + +* 返回值 + + void + +* 示例 + +```js +//addslot回调 +function addSlotCallBack(err) { + console.info("==========================>addSlotCallBack=======================>"); +} +//通知slot对象 +var notificationSlot = { + type: Notification.SlotType.SOCIAL_COMMUNICATION +} +Notification.addSlot(notificationSlot, addSlotCallBack) +``` + + + +## Notification.addSlot(slot: NotificationSlot) + +- 接口说明 + + 创建通知通道(Promise形式) + +- addSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---- | -------- | ---------------- | ---- | -------------------- | +| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道对象 | + +- 返回值 + + Promise\ + +- 示例 + +```js +//通知slot对象 +var notificationSlot = { + type: Notification.SlotType.SOCIAL_COMMUNICATION +} +Notification.addSlot(notificationSlot).then((void) => { + console.info("==========================>addSlotCallback=======================>"); +}); +``` + + + +## Notification.addSlot(type: SlotType, callback: AsyncCallback\) + +- 接口说明 + + 创建通知通道(callback形式) + +- addSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ---------------------- | +| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//addslot回调 +function addSlotCallBack(err) { + console.info("==========================>addSlotCallBack=======================>"); +} +Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION, addSlotCallBack) +``` + + + +## Notification.addSlot(type: SlotType) + +- 接口说明 + + 创建通知通道(Promise形式) + +- addSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---- | -------- | -------- | ---- | ---------------------- | +| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 | + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION).then((void) => { + console.info("==========================>addSlotCallback=======================>"); +}); +``` + + + +## Notification.addSlots(slots: Array\, callback: AsyncCallback\) + +- 接口说明 + + 创建多个通知通道(callback形式) + +- addSlots数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ------------------------- | ---- | ------------------------ | +| slots | 只读 | Array\ | 是 | 要创建的通知通道对象数组 | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//addSlots回调 +function addSlotsCallBack(err) { + console.info("==========================>addSlotsCallBack=======================>"); +} +//通知slot对象 +var notificationSlot = { + type: Notification.SlotType.SOCIAL_COMMUNICATION +} +//通知slot array 对象 +var notificationSlotArray = new Array(); +notificationSlotArray[0] = notificationSlot; + +Notification.addSlots(notificationSlotArray, addSlotsCallBack) +``` + + + +## Notification.addSlots(slots: Array\) + +- 接口说明 + + 创建多个通知通道(Promise形式) + +- addSlots数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----- | -------- | ------------------------- | ---- | ------------------------ | +| slots | 只读 | Array\ | 是 | 要创建的通知通道对象数组 | + +- 返回值 + + Promise\ + +- 示例 + +```js +//通知slot对象 +var notificationSlot = { + type: Notification.SlotType.SOCIAL_COMMUNICATION +} +//通知slot array 对象 +var notificationSlotArray = new Array(); +notificationSlotArray[0] = notificationSlot; + +Notification.addSlots(notificationSlotArray).then((void) => { + console.info("==========================>addSlotCallback=======================>"); +}); +``` + + + +## Notification.getSlot(slotType: SlotType, callback: AsyncCallback\) + +- 接口说明 + + 获取一个通知通道(callback形式) + +- getSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------------------- | ---- | ----------------------------------------------------------- | +| slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//getSlot回调 +function getSlotCallback(err,data) { + console.info("==========================>getSlotCallback=======================>"); +} +var slotType = Notification.SlotType.SOCIAL_COMMUNICATION; +Notification.getSlot(slotType, getSlotCallback) +``` + + + +## Notification.getSlot(slotType) + +- 接口说明 + + 获取一个通知通道(Promise形式) + +- getSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | -------- | ---- | ----------------------------------------------------------- | +| slotType | 只读 | slotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var slotType = Notification.SlotType.SOCIAL_COMMUNICATION; +Notification.getSlot(slotType).then((data) => { + console.info("==========================>getSlotCallback=======================>"); +}); +``` + + + +## Notification.getSlots(callback: AsyncCallback>) + +- 接口说明 + + 获取此应用程序的所有通知通道(callback形式) + +- getSlots参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------------------- | ---- | -------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//getSlots回调 +function getSlotsCallback(err,data) { + console.info("==========================>getSlotsCallback=======================>"); +} +Notification.getSlots(getSlotsCallback) +``` + + + +## Notification.getSlots() + +- 接口说明 + + 获取此应用程序的所有通知通道(Promise形式) + +- getSlots参数描述 + + 无参数 + +- 返回值 + + Promise\\> + +- 示例 + +```js +Notification.getSlots().then((data) => { + console.info("==========================>getSlotsCallback=======================>"); +}); +``` + + + +## Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\) + +- 接口说明 + + 根据通知通道类型删除创建的通知通道(callback形式) + +- removeSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ----------------------------------------------------------- | +| SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +//removeSlot回调 +function removeSlotCallback(err) { + console.info("==========================>removeSlotCallback=======================>"); +} +var slotType = Notification.SlotType.SOCIAL_COMMUNICATION; +Notification.removeSlot(slotType,removeSlotCallback) +``` + + + +## Notification.removeSlot(slotType: SlotType) + +- 接口说明 + + 根据通知通道类型删除创建的通知通道(Promise形式) + +- removeSlot参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | -------- | ---- | ----------------------------------------------------------- | +| SlotType | 只读 | SlotType | 是 | 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var slotType = Notification.SlotType.SOCIAL_COMMUNICATION; +Notification.removeSlot(slotType).then((void) => { + console.info("==========================>removeSlotCallback=======================>"); +}); +``` + + + +## Notification.removeAllSlots(callback: AsyncCallback\) + +- 接口说明 + + 删除所有通知通道(callback形式) + +- removeAllSlots参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +function removeAllCallBack(err) { + console.info("================>removeAllCallBack=======================>"); +} +Notification.removeAllSlots(removeAllCallBack) +``` + + + +## Notification.removeAllSlots() + +- 接口说明 + + 删除所有通知通道(Promise形式) + +- removeAllSlots参数描述 + + 参数无 + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.removeAllSlots().then((void) => { + console.info("==========================>removeAllCallBack=======================>"); +}); +``` + + + +## Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\) + +- 接口说明 + + 订阅通知并指定订阅信息(callback形式) + +- subscribe参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ------------------------- | ---- | ---------------- | +| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 | +| info | 只读 | NotificationSubscribeInfo | 是 | 订阅信息 | +| callback | 只读 | AsyncCallback\ | 是 | 订阅动作回调函数 | + +- NotificationSubscriber类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------------------------------------------------------------ | -------- | -------- | ---- | -------------------------- | +| onConsume?:(data: SubscribeCallbackData) | 读、写 | function | 否 | 接收通知回调函数 | +| onCancel?:(data: SubscribeCallbackData) | 读、写 | function | 否 | 删除通知回调函数 | +| onUpdate?:(data: NotificationSortingMap) | 读、写 | function | 否 | 更新通知排序回调函数 | +| onConnect?:() | 读、写 | function | 否 | 注册订阅回调函数 | +| onDisconnect?:() | 读、写 | function | 否 | 取消订阅回调函数 | +| onDestroy?:() | 读、写 | function | 否 | 服务失联回调函数 | +| onDoNotDisturbDateChange?:(mode: notification.DoNotDisturbDate) | 读、写 | function | 否 | 免打扰时间选项变更回调函数 | + +- SubscribeCallbackData 类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------------- | -------- | ---------------------- | ---- | -------- | +| request | 只读 | NotificationRequest | 是 | 通知内容 | +| sortingMap | 只读 | NotificationSortingMap | 否 | 排序信息 | +| reason | 只读 | number | 否 | 删除原因 | +| sound | 只读 | string | 否 | 通知声音 | +| vibrationValues | 只读 | Array\ | 否 | 通知震动 | + +- NotificationSortingMap类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------- | -------- | ------------------------------------ | ---- | ---------------- | +| sortings | 只读 | {[key: string]: NotificationSorting} | 是 | 通知排序信息数组 | +| sortedHashCode | 只读 | Array\ | 是 | 通知唯一标识数组 | + +- NotificationSorting 类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ---------------- | ---- | ------------ | +| slot | 只读 | NotificationSlot | 是 | 通知通道内容 | +| hashCode | 只读 | string | 是 | 通知唯一标识 | +| ranking | 只读 | number | 是 | 通知排序序号 | + +- DoNotDisturbType类型说明 + + +| 名称 | 读写属性 | 类型 | 描述 | +| ------------ | -------- | --------------------- | ---------------------------------------- | +| TYPE_NONE | 只读 | enum DoNotDisturbType | 非通知勿扰类型 | +| TYPE_ONCE | 只读 | enum DoNotDisturbType | 以设置时间段(只看小时和分钟)一次执行勿扰 | +| TYPE_DAILY | 只读 | enum DoNotDisturbType | 以设置时间段(只看小时和分钟)每天执行勿扰 | +| TYPE_CLEARLY | 只读 | enum DoNotDisturbType | 以设置时间段(明确年月日时分)执行勿扰 | + +- DoNotDisturbDate类型说明 + +| 名称 | 读写属性 | 类型 | 描述 | +| ----- | -------- | ---------------- | ------------------------ | +| type | 读写 | DoNotDisturbType | 指定免打扰设置的时间类型 | +| begin | 读写 | Date | 指定免打扰设置的起点时间 | +| end | 读写 | Date | 指定免打扰设置的终点时间 | + +- NotificationSubscribeInfo类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----------- | -------- | --------------- | ---- | ------------------------------- | +| bundleNames | 读、写 | Array\ | 否 | 指定订阅哪些包名的APP发来的通知 | +| userId | 读、写 | number | 否 | 指定订阅哪个用户下发来的通知 | + +- 返回值 + + void + +- 示例 + +```js +//subscribe回调 +function subscribeCallback(err) { + console.info("==========================>subscribeCallback=======================>"); +} +function onConsumeCallback(err, data) { + console.info("==========================>onConsumeCallback=======================>"); +} +var subscriber = { + onConsume: onConsumeCallback +} +var info = { + bundleNames: ["bundleName1","bundleName2"] +} +Notification.subscribe(subscriber, info, subscribeCallback); +``` + + + +## Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\) + +- 接口说明 + + 订阅通知并指定订阅信息(callback形式) + +- subscribe参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ---------------------- | ---- | ---------------- | +| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 | +| callback | 只读 | AsyncCallback\ | 是 | 订阅动作回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function subscribeCallback(err) { + console.info("==========================>subscribeCallback=======================>"); +} +function onConsumeCallback(err, data) { + console.info("==========================>onConsumeCallback=======================>"); +} +var subscriber = { + onConsume: onConsumeCallback +} +Notification.subscribe(subscriber, subscribeCallback); +``` + + + +## Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo) + +- 接口说明 + + 订阅通知并指定订阅信息(Promise形式) + +- subscribe参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ------------------------- | ---- | ------------ | +| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 | +| info | 只读 | NotificationSubscribeInfo | 否 | 订阅信息 | + +- 返回值 + + Promise\ + +- 示例 + +```js +function onConsumeCallback(err, data) { + console.info("==========================>onConsumeCallback=======================>"); +} +var subscriber = { + onConsume: onConsumeCallback +}; +Notification.subscribe(subscriber).then((void) => { + console.info("==========================>subscribeCallback=======================>"); +}); +``` + + + +## Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\) + +- 接口说明 + + 取消订阅(callbcak形式) + +- unsubscribe参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ---------------------- | ---- | -------------------- | +| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 | +| callback | 只读 | AsyncCallback\ | 是 | 取消订阅动作回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function unsubscribeCallback(err) { + console.info("==========================>unsubscribeCallback=======================>"); +} +function onConsumeCallback(err, data) { + console.info("==========================>onConsumeCallback=======================>"); +} +var subscriber = { + onConsume: onConsumeCallback +} +Notification.unsubscribe(subscriber, unsubscribeCallback); +``` + + + +## Notification.unsubscribe(subscriber: NotificationSubscriber) + +- 接口说明 + + 取消订阅(Promise形式) + +- unsubscribe参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ---------------------- | ---- | ------------ | +| subscriber | 只读 | NotificationSubscriber | 是 | 通知订阅对象 | + +- 返回值 + + Promise\ + +- 示例 + +```js +function onConsumeCallback(err, data) { + console.info("==========================>onConsumeCallback=======================>"); +} +var subscriber = { + onConsume: onConsumeCallback +}; +Notification.unsubscribe(subscriber).then((void) => { + console.info("==========================>unsubscribeCallback=======================>"); +}); +``` + + + +## Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\) + +- 接口说明 + + 设定指定包的通知使能状态(Callback形式) + +- enableNotification参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| enable | 只读 | boolean | 是 | 使能状态 | +| callback | 只读 | AsyncCallback\ | 是 | 设定通知使能回调函数 | + +- BundleOption类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------ | ---- | ------ | +| bundle | 读/写 | string | 是 | 包名 | +| uid | 读/写 | number | 否 | 用户id | +- 返回值 + + void + +- 示例 + +```js +function enableNotificationCallback(err) { + console.info("==========================>enableNotificationCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +Notification.enableNotification(bundle, false, enableNotificationCallback); +``` + + + +## Notification.enableNotification(bundle: BundleOption, enable: boolean) + +- 接口说明 + + 设定指定包的通知使能状态(Promise形式) + +- enableNotification参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| enable | 只读 | boolean | 是 | 使能状态 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +Notification.enableNotification(bundle, false).then((void) => { + console.info("==========================>enableNotificationCallback=======================>"); +}); +``` + + + +## Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\) + +- 接口说明 + + 获取指定包的通知使能状态(Callback形式) + +- isNotificationEnabled参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ------------------------ | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| callback | 只读 | AsyncCallback\ | 是 | 获取通知使能状态回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function isNotificationEnabledCallback(err, data) { + console.info("==========================>isNotificationEnabledCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +Notification.isNotificationEnabled(bundle, isNotificationEnabledCallback); +``` + + + +## Notification.isNotificationEnabled(bundle: BundleOption) + +- 接口说明 + + 获取指定包的通知使能状态(Promise形式) + +- isNotificationEnabled参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +Notification.isNotificationEnabled(bundle).then((data) => { + console.info("==========================>isNotificationEnabledCallback=======================>"); +}); +``` + + + +## Notification.isNotificationEnabled(callback: AsyncCallback\) + +- 接口说明 + + 获取通知使能状态(Callback形式) + +- isNotificationEnabled参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ------------------------ | +| callback | 只读 | AsyncCallback\ | 是 | 获取通知使能状态回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function isNotificationEnabledCallback(err, data) { + console.info("==========================>isNotificationEnabledCallback=======================>"); +} + +Notification.isNotificationEnabled(isNotificationEnabledCallback); +``` + + + +## Notification.isNotificationEnabled() + +- 接口说明 + + 获取通知使能状态(Promise形式) + +- isNotificationEnabled参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.isNotificationEnabled().then((data) => { + console.info("==========================>isNotificationEnabledCallback=======================>"); +}); +``` + + + +## Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\) + +- 接口说明 + + 设定指定包的角标使能状态(Callback形式) + +- displayBadge参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| enable | 只读 | boolean | 是 | 使能状态 | +| callback | 只读 | AsyncCallback\ | 是 | 设定角标使能回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function displayBadgeCallback(err) { + console.info("==========================>displayBadgeCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +Notification.displayBadge(bundle, false, displayBadgeCallback); +``` + + + +## Notification.displayBadge(bundle: BundleOption, enable: boolean) + +- 接口说明 + + 设定指定包的角标使能状态(Promise形式) + +- displayBadge参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| enable | 只读 | boolean | 是 | 使能状态 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +Notification.displayBadge(bundle, false).then((void) => { + console.info("==========================>displayBadgeCallback=======================>"); +}); +``` + + + +## Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\) + +- 接口说明 + + 获取指定包的角标使能状态(Callback形式) + +- isBadgeDisplayed参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ------------------------ | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| callback | 只读 | AsyncCallback\ | 是 | 获取角标使能状态回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function isBadgeDisplayedCallback(err, data) { + console.info("==========================>isBadgeDisplayedCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +Notification.isBadgeDisplayed(bundle, isBadgeDisplayedCallback); +``` + + + +## Notification.isBadgeDisplayed(bundle: BundleOption) + +- 接口说明 + + 获取指定包的角标使能状态(Promise形式) + +- isBadgeDisplayed参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +Notification.isBadgeDisplayed(bundle).then((data) => { + console.info("==========================>isBadgeDisplayedCallback=======================>"); +}); +``` + + + +## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\) + +- 接口说明 + + 设定指定包的通知通道状态(Callback形式) + +- setSlotByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| slot | 只读 | NotificationSlot | 是 | 通知通道 | +| callback | 只读 | AsyncCallback\ | 是 | 设定通知通道回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function setSlotByBundleCallback(err) { + console.info("==========================>setSlotByBundleCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +var notificationSlot = { + type: Notification.SlotType.SOCIAL_COMMUNICATION +} +Notification.setSlotByBundle(bundle, notificationSlot, setSlotByBundleCallback); +``` + + + +## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot) + +- 接口说明 + + 设定指定包的角标使能状态(Promise形式) + +- setSlotByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| enable | 只读 | boolean | 是 | 使能状态 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +var notificationSlot = { + type: Notification.SlotType.SOCIAL_COMMUNICATION +} +Notification.displayBadge(bundle, notificationSlot).then((void) => { + console.info("==========================>setSlotByBundleCallback=======================>"); +}); +``` + + + +## Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback>) + +- 接口说明 + + 获取指定包的通知通道(Callback形式) + +- getSlotsByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ---------------------------------------- | ---- | -------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| callback | 只读 | AsyncCallback> | 是 | 获取通知通道回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function getSlotsByBundleCallback(err, data) { + console.info("==========================>getSlotsByBundleCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +Notification.getSlotsByBundle(bundle, getSlotsByBundleCallback); +``` + + + +## Notification.getSlotsByBundle(bundle: BundleOption) + +- 接口说明 + + 获取指定包的通知通道(Promise形式) + +- getSlotsByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | + +- 返回值 + + Promise> + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +Notification.getSlotsByBundle(bundle).then((data) => { + console.info("==========================>getSlotsByBundleCallback=======================>"); +}); +``` + + + +## Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\) + +- 接口说明 + + 获取指定包的通知通道数(Callback形式) + +- getSlotNumByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ------------------------- | ---- | ---------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| callback | 只读 | AsyncCallback\ | 是 | 获取通知通道数回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function getSlotNumByBundle(err, data) { + console.info("==========================>getSlotNumByBundleCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +Notification.getSlotNumByBundle(bundle, getSlotNumByBundleCallback); +``` + + + +## Notification.getSlotNumByBundle(bundle: BundleOption) + +- 接口说明 + + 获取指定包的通知通道数(Promise形式) + +- getSlotNumByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +Notification.getSlotNumByBundle(bundle).then((data) => { + console.info("==========================>getSlotNumByBundleCallback=======================>"); +}); +``` + + + +## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\) + +- 接口说明 + + 删除指定通知(Callback形式) + +- remove参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------------- | -------- | --------------------- | ---- | -------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| notificationKey | 只读 | NotificationKey | 是 | 通知键值 | +| callback | 只读 | AsyncCallback\ | 是 | 删除指定通知回调函数 | + +- NotificationKey类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----- | -------- | ------ | ---- | -------- | +| id | 读、写 | number | 是 | 通知ID | +| label | 读、写 | string | 否 | 通知标签 | + +- 返回值 + + void + +- 示例 + +```js +function removeCallback(err) { + console.info("==========================>removeCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +var notificationKey = { + id: 0; + label: "label"; +} +Notification.remove(bundle, notificationKey, removeCallback); +``` + + + +## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey) + +- 接口说明 + + 删除指定通知(Promise形式) + +- remove参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------------- | -------- | --------------- | ---- | ---------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| notificationKey | 只读 | NotificationKey | 是 | 通知键值 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundle = { + bundle: "bundleName1"; +} +var notificationKey = { + id: 0; + label: "label"; +} +Notification.remove(bundle, notificationKey).then((void) => { + console.info("==========================>removeCallback=======================>"); +}); +``` + + + +## Notification.remove(hashCode: string, callback: AsyncCallback\) + +- 接口说明 + + 删除指定通知(Callback形式) + +- remove参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| hashCode | 只读 | string | 是 | 通知唯一ID | +| callback | 只读 | AsyncCallback\ | 是 | 删除指定通知回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function removeCallback(err) { + console.info("==========================>removeCallback=======================>"); +} + +Notification.remove(hashCode, removeCallback); +``` + + + +## Notification.remove(hashCode: string) + +- 接口说明 + + 删除指定通知(Promise形式) + +- remove参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ---------- | ---- | ---------- | +| hashCode | 只读 | string | 是 | 通知唯一ID | + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.remove(hashCode).then((void) => { + console.info("==========================>removeCallback=======================>"); +}); +``` + + + +## Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\) + +- 接口说明 + + 删除指定包的所有通知(Callback形式) + +- removeAll参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ---------------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| callback | 只读 | AsyncCallback\ | 是 | 删除指定包的所有通知回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function removeAllCallback(err) { + console.info("==========================>removeAllCallback=======================>"); +} +var bundle = { + bundle: "bundleName1"; +} +Notification.removeAll(bundle, removeAllCallback); +``` + + + +## Notification.removeAll(callback: AsyncCallback\) + +- 接口说明 + + 删除所有通知(Callback形式) + +- removeAll参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | -------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 删除所有通知回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function removeAllCallback(err) { + console.info("==========================>removeAllCallback=======================>"); +} + +Notification.removeAll(removeAllCallback); +``` + + + +## Notification.removeAll(bundle?: BundleOption) + +- 接口说明 + + 删除所有通知(Promise形式) + +- removeAll参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------ | -------- | ------------ | ---- | ---------- | +| bundle | 只读 | BundleOption | 否 | 指定包信息 | + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.removeAll().then((void) => { + console.info("==========================>removeAllCallback=======================>"); +}); +``` + + + +## Notification.getAllActiveNotifications(callback: AsyncCallback>) + +- 接口说明 + + 获取活动通知(Callback形式) + +- getAllActiveNotifications参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ------------------------------------------- | ---- | -------------------- | +| callback | 只读 | AsyncCallback> | 是 | 获取活动通知回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function getAllActiveNotificationsCallback(err, data) { + console.info("==========================>getAllActiveNotificationsCallback=======================>"); +} + +Notification.getAllActiveNotifications(getAllActiveNotificationsCallback); +``` + + + +## Notification.getAllActiveNotifications() + +- 接口说明 + + 获取活动通知(Promise形式) + +- getAllActiveNotifications参数描述 + + 无 + +- 返回值 + + Promise\\> + +- 示例 + +```js +Notification.getAllActiveNotifications().then((data) => { + console.info("==========================>getAllActiveNotificationsCallback=======================>"); +}); +``` + + + +## Notification.getActiveNotificationCount(callback: AsyncCallback\) + +- 接口说明 + + 获取当前应用的活动通知数(Callback形式) + +- getActiveNotificationCount参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ---------------------- | ---- | ---------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 获取活动通知数回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function getActiveNotificationCountCallback(err, data) { + console.info("==========================>getActiveNotificationCountCallback=======================>"); +} + +Notification.getActiveNotificationCount(getActiveNotificationCountCallback); +``` + + + +## Notification.getActiveNotificationCount() + +- 接口说明 + + 获取当前应用的活动通知数(Promise形式) + +- getActiveNotificationCount参数描述 + + 无 + +- 返回值 + + 返回值为Promise\ + +- 示例 + +```js +Notification.getActiveNotificationCount().then((data) => { + console.info("==========================>getActiveNotificationCountCallback=======================>"); +}); +``` + + + +## Notification.getActiveNotifications(callback: AsyncCallback>) + +- 接口说明 + + 获取当前应用的活动通知(Callback形式) + +- getActiveNotifications参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ------------------------------------------- | ---- | ------------------------------ | +| callback | 只读 | AsyncCallback> | 是 | 获取当前应用的活动通知回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function getActiveNotificationsCallback(err, data) { + console.info("==========================>getActiveNotificationsCallback=======================>"); +} + +Notification.getActiveNotifications(getActiveNotificationsCallback); +``` + + + +## Notification.getActiveNotifications() + +- 接口说明 + + 获取当前应用的活动通知(Promise形式) + +- getActiveNotifications参数描述 + + 无 + +- 返回值 + + Promise\\> + +- 示例 + +```js +Notification.getActiveNotifications().then((data) => { + console.info("==========================>getActiveNotificationsCallback=======================>"); +}); +``` + + + +## Notification.cancelGroup(groupName: string, callback: AsyncCallback\) + +- 接口说明 + + 取消本应用指定组通知(Callback形式) + +- cancelGroup参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | --------------------- | ---- | ---------------------------- | +| groupName | 只读 | string | 是 | 指定通知组名称 | +| callback | 只读 | AsyncCallback\ | 是 | 取消本应用指定组通知回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function cancelGroupCallback(err) { + console.info("==========================>cancelGroupCallback=======================>"); +} + +var groupName = "GroupName"; + +Notification.cancelGroup(groupName, cancelGroupCallback); +``` + + + +## Notification.cancelGroup(groupName: string) + +- 接口说明 + + 取消本应用指定组通知(Promise形式) + +- cancelGroup参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | ------ | ---- | -------------- | +| groupName | 只读 | string | 是 | 指定通知组名称 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var groupName = "GroupName"; +Notification.cancelGroup(groupName).then(() => { + console.info("==========================>cancelGroupPromise=======================>"); +}); +``` + + + +## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\) + +- 接口说明 + + 删除指定应用指定组通知(Callback形式) + +- removeGroupByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | --------------------- | ---- | ---------------------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| groupName | 只读 | string | 是 | 指定通知组名称 | +| callback | 只读 | AsyncCallback\ | 是 | 删除本应用指定组通知回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function removeGroupByBundleCallback(err) { + console.info("==========================>removeGroupByBundleCallback=======================>"); +} + +var bundleOption = {bundle: "Bundle"}; +var groupName = "GroupName"; + +Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCallback); +``` + + + +## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string) + +- 接口说明 + + 删除指定应用指定组通知(Promise形式) + +- removeGroupByBundle参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | ------------ | ---- | -------------- | +| bundle | 只读 | BundleOption | 是 | 指定包信息 | +| groupName | 只读 | string | 是 | 指定通知组名称 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var bundleOption = {bundle: "Bundle"}; +var groupName = "GroupName"; +Notification.removeGroupByBundle(bundleOption, groupName).then(() => { + console.info("==========================>removeGroupByBundlePromise=======================>"); +}); +``` + + + +## Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\) + +- 接口说明 + + 设置免打扰时间(Callback形式) + +- setDoNotDisturbDate参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ---------------------- | +| date | 只读 | DoNotDisturbDate | 是 | 免打扰时间选项 | +| callback | 只读 | AsyncCallback\ | 是 | 设置免打扰时间回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function setDoNotDisturbDateCallback(err) { + console.info("==========================>setDoNotDisturbDateCallback=======================>"); +} + +var doNotDisturbDate = { + type: notification.DoNotDisturbType.TYPE_ONCE, + begin: new Date(), + end: new Date(2021, 11, 15, 18, 0) +} + +Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback); +``` + + + +## Notification.setDoNotDisturbDate(date: DoNotDisturbDate) + +- 接口说明 + + 设置免打扰时间接口(Promise形式) + +- setDoNotDisturbDate参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---- | -------- | ---------------- | ---- | -------------- | +| date | 只读 | DoNotDisturbDate | 是 | 免打扰时间选项 | + +- 返回值 + + Promise\ + +- 示例 + +```js +var doNotDisturbDate = { + type: notification.DoNotDisturbType.TYPE_ONCE, + begin: new Date(), + end: new Date(2021, 11, 15, 18, 0) +} +Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => { + console.info("==========================>setDoNotDisturbDatePromise=======================>"); +}); +``` + + + +## Notification.getDoNotDisturbDate(callback: AsyncCallback\) + +- 接口说明 + + 查询免打扰时间接口(Callback形式) + +- getDoNotDisturbDate参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------------------- | ---- | ---------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 查询免打扰时间回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function getDoNotDisturbDateCallback(err,data) { + console.info("==========================>getDoNotDisturbDateCallback=======================>"); +} + +Notification.getDoNotDisturbDate(getDoNotDisturbDateCallback); +``` + + + +## Notification.getDoNotDisturbDate() + +- 接口说明 + + 查询免打扰时间接口(Promise形式) + +- getDoNotDisturbDate参数描述 + + 无 + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.getDoNotDisturbDate().then((data) => { + console.info("==========================>getDoNotDisturbDatePromise=======================>"); +}); +``` + + + +## Notification.supportDoNotDisturbMode(callback: AsyncCallback\) + +- 接口说明 + + 查询是否支持勿扰模式功能(Callback形式) + +- supportDoNotDisturbMode参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ------------------------ | ---- | -------------------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 查询是否支持勿扰模式功能回调函数 | + +- 返回值 + + void + +- 示例 + +```js +function supportDoNotDisturbModeCallback(err,data) { + console.info("==========================>supportDoNotDisturbModeCallback=======================>"); +} + +Notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback); +``` + + + +## Notification.supportDoNotDisturbMode() + +- 接口说明 + + 查询是否支持勿扰模式功能(Promise形式) + +- supportDoNotDisturbMode参数描述 + + 无 + +- 返回值 + + Promise\ + +- 示例 + +```js +Notification.supportDoNotDisturbMode().then((data) => { + console.info("==========================>supportDoNotDisturbModePromise=======================>"); +}); +``` + + + +## WantAgent接口 + +## 导入模块 + +```js +import WantAgent from '@ohos.wantAgent'; +``` + +## WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\) + +- 接口说明 + + 创建WantAgent(callback形式) + +- getWantAgent参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | -------------------------- | ---- | ----------------------- | +| info | 只读 | WantAgentInfo | 是 | WantAgent信息 | +| callback | 只读 | AsyncCallback\ | 是 | 创建WantAgent的回调方法 | + +- WantAgentInfo类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------------- | -------- | ------------------------------- | ---- | ---------------------- | +| wants | 读、写 | Array\ | 是 | 将被执行的动作列表 | +| operationType | 读、写 | wantAgent.OperationType | 是 | 动作类型 | +| requestCode | 读、写 | number | 是 | 使用者定义的一个私有值 | +| wantAgentFlags | 读、写 | Array | 否 | 动作执行属性 | +| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 | + +- + WantAgentFlags类型说明 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ------------------- | -------- | ---- | ---- | ------------------------------------------------------------ | +| ONE_TIME_FLAG | 只读 | enum | 否 | WantAgent仅能使用一次 | +| NO_BUILD_FLAG | 只读 | enum | 否 | 如果描述WantAgent对象不存在,则不创建它,直接返回null | +| CANCEL_PRESENT_FLAG | 只读 | enum | 否 | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象 | +| UPDATE_PRESENT_FLAG | 只读 | enum | 否 | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据 | +| CONSTANT_FLAG | 只读 | enum | 否 | WantAgent是不可变的 | + +- OperationType类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----------------- | -------- | ---- | ---- | ----------------------- | +| UNKNOWN_TYPE | 只读 | enum | 否 | 不识别的类型 | +| START_ABILITY | 只读 | enum | 否 | 开启一个有页面的Ability | +| START_ABILITIES | 只读 | enum | 否 | 开启多个有页面的Ability | +| START_SERVICE | 只读 | enum | 否 | 开启一个无页面的ability | +| SEND_COMMON_EVENT | 只读 | enum | 否 | 发送一个公共事件 | + +- 返回值 + + void + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +``` + + + +## WantAgent.getWantAgent(info: WantAgentInfo): Promise\ + +- 接口说明 + + 创建WantAgent(Promise形式) + +- getWantAgent参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---- | -------- | ------------- | ---- | ------------- | +| info | 只读 | WantAgentInfo | 是 | WantAgent信息 | + +- 返回值 + + Promise\ + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); +}); +``` + + + +## WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\) + +- 接口说明 + + 获取WantAgent实例的包名(callback形式) + +- getBundleName参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ----------------------- | ---- | --------------------------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | +| callback | 只读 | AsyncCallback\ | 是 | 获取WantAgent实例的包名的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//getBundleName回调 +function getBundleNameCallback(err, data) { + console.info("==========================>getBundleNameCallback=======================>"); +} +WantAgent.getBundleName(wantAgent, getBundleNameCallback) +``` + + + +## WantAgent.getBundleName(agent: WantAgent): Promise\ + +- 接口说明 + + 获取WantAgent实例的包名(Promise形式) + +- getBundleName参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----- | -------- | --------- | ---- | ------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | + +- 返回值 + + Promise\ + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.getBundleName(wantAgent).then((data) => { + console.info("==========================>getBundleNameCallback=======================>"); +}); +``` + + + +## WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\) + +- 接口说明 + + 获取WantAgent实例的用户ID(callback形式) + +- getUid参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | ----------------------- | ---- | ----------------------------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | +| callback | 只读 | AsyncCallback\ | 是 | 获取WantAgent实例的用户ID的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//getUid回调 +function getUidCallback(err, data) { + console.info("==========================>getUidCallback=======================>"); +} +WantAgent.getUid(wantAgent, getUidCallback) +``` + + + +## WantAgent.getUid(agent: WantAgent): Promise\ + +- 接口说明 + + 获取WantAgent实例的用户ID(Promise形式) + +- getUid参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----- | -------- | --------- | ---- | ------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | + +- 返回值 + + Promise\ + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.getUid(wantAgent).then((data) => { + console.info("==========================>getUidCallback=======================>"); +}); +``` + + + +## WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\) + +- 接口说明 + + 获取WantAgent对象的want(callback形式) + +- getWant参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | ------------------------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | +| callback | 只读 | AsyncCallback\ | 是 | 获取WantAgent对象want的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentWantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//getWant回调 +function getWantCallback(err, data) { + console.info("==========================>getWantCallback=======================>"); +} +WantAgent.getWant(wantAgent, getWantCallback) +``` + + + +## WantAgent.getWant(agent: WantAgent): Promise\ + +- 接口说明 + + 获取WantAgent对象的want(Promise形式) + +- getWant参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----- | -------- | --------- | ---- | ------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | + +- 返回值 + + Promise\ + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.getWant(wantAgent).then((data) => { + console.info("==========================>getWantCallback=======================>"); +}); +``` + + + +## WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\) + +- 接口说明 + + 取消WantAgent实例(callback形式) + +- cancel参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | --------------------- | ---- | --------------------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | +| callback | 只读 | AsyncCallback\ | 是 | 取消WantAgent实例的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//cancel回调 +function cancelCallback(err, data) { + console.info("==========================>cancelCallback=======================>"); +} +WantAgent.cancel(wantAgent, cancelCallback) +``` + + + +## WantAgent.cancel(agent: WantAgent): Promise\ + +- 接口说明 + + 取消WantAgent实例(Promise形式) + +- cancel参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----- | -------- | --------- | ---- | ------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | + +- 返回值 + + Promise\ + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.cancel(wantAgent).then((data) => { + console.info("==========================>cancelCallback=======================>"); +}); +``` + + + +## WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\) + +- 接口说明 + + 主动激发WantAgent实例(callback形式) + +- trigger参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ----------- | -------- | ----------------------------- | ---- | ------------------------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | +| triggerInfo | 只读 | TriggerInfo | 是 | TriggerInfo对象 | +| callback | 只读 | AsyncCallback\ | 是 | 主动激发WantAgent实例的回调方法 | + +- TriggerInfo类型说明 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | -------------------- | ---- | ----------- | +| code | 读、写 | number | 是 | result code | +| want | 读、写 | Want | 否 | Want | +| permission | 读、写 | string | 否 | 权限定义 | +| extraInfo | 读、写 | {[key: string]: any} | 否 | 额外数据 | + +- 返回值 + + void + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//trigger回调 +function triggerCallback(err, data) { + console.info("==========================>triggerCallback=======================>"); +} + +var triggerInfo = { + code:0 +} +WantAgent.trigger(wantAgent, triggerInfo, triggerCallback) +``` + + + +## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\) + +- 接口说明 + + 判断两个WantAgent实例是否相等(callback形式) + +- equal参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ------------------------ | ---- | --------------------------------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | +| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 | +| callback | 只读 | AsyncCallback\ | 是 | 判断两个WantAgent实例是否相等的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent1; +var wantAgent2; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent1 = data; + wantAgent2 = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//equal回调 +function equalCallback(err, data) { + console.info("==========================>equalCallback=======================>"); +} +WantAgent.equal(wantAgent1, wantAgent2, equalCallback) +``` + + + +## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\ + +- 接口说明 + + 判断两个WantAgent实例是否相等(Promise形式) + +- equal参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | --------- | ---- | ------------- | +| agent | 只读 | WantAgent | 是 | WantAgent对象 | +| otherAgent | 只读 | WantAgent | 是 | WantAgent对象 | + +- 返回值 + + Promise\ + +- 示例 + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent1; +var wantAgent2; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent1 = data; + wantAgent2 = data; +}); + +WantAgent.equal(wantAgent1, wantAgent2).then((data) => { + console.info("==========================>equalCallback=======================>"); +}); +``` + + + +#### + + + + diff --git a/zh-cn/application-dev/reference/apis/js-apis-particleAbility.md b/zh-cn/application-dev/reference/apis/js-apis-particleAbility.md index 61a144a8ef5c29b425b5da71ed62e1023d793763..9674cf739c3fb42a06ac6572c6d44643c316c4d6 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-particleAbility.md +++ b/zh-cn/application-dev/reference/apis/js-apis-particleAbility.md @@ -1,411 +1,394 @@ -# ParticleAbility模块(JS端SDK接口) - -#### 支持设备 - -| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 | -| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ | -| ParticleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| ParticleAbility.startAbility(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| ParticleAbility.terminateSelf(callback: AsyncCallback\) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | -| 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\ - -- 接口说明 - - 服务ability使用此方法启动特定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 - -- 示例 - -```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\) - -- 接口说明 - - 摧毁服务ability(callback形式) - -- terminateSelf参数描述 - - | 名称 | 读写属性 | 类型 | 必填 | 描述 | - | -------- | -------- | -------------------- | ---- | -------------------- | - | callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | - -- 返回值 - - 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 - -* 接口说明 - - 断开与指定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; - -* 接口说明 - - 断开与指定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 | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| particleAbility.startAbility(parameter: StartAbilityParameter): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| particleAbility.terminateSelf(callback: AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| particleAbility.terminateSelf(): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| particleAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| particleAbility.connectAbility(request: Want, options:ConnectOptions): number | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| particleAbility.disconnectAbility(connection: number, callback:AsyncCallback\): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | +| particleAbility.disconnectAbility(connection: number): Promise\ | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | + +## 使用限制 + +particleAbility模块用来对Data和Service类型的Ability进行操作 + +## 导入模块 + +```js +import particleAbility from '@ohos.ability.particleAbility' +``` + +## particleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\: void + +- 接口说明 + + 使用此方法启动指定的particleAbility(callback形式) + +- startAbility参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | ------------------------------------------------------- | ---- | ----------------- | +| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 指示启动的ability | +| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | + +- 返回值 + + 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\ + +- 接口说明 +使用此方法启动指定的particleAbility(Promise形式) + +- startAbility参数描述 + + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| --------- | -------- | ------------------------------------------------------- | ---- | ----------------- | +| parameter | 只读 | [StartAbilityParameter](#StartAbilityParameter类型说明) | 是 | 指示启动的ability | +- 返回值 + + Promise\ + +- 示例 + +```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 + +- 接口说明 + + 终止particleAbility(callback形式) + +- terminateSelf参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| -------- | -------- | -------------------- | ---- | -------------------- | +| callback | 只读 | AsyncCallback\ | 是 | 表示被指定的回调方法 | + +- 返回值 + + void + +- 示例 + +```js +import particleAbility from '@ohos.ability.particleAbility' +particleAbility.terminateSelf( + (error, result) => { + console.log('particleAbility terminateSelf errCode:' + error + 'result:' + result) + } +) +``` + + + +## particleAbility.terminateSelf(): Promise\ + +- 接口说明 + + 终止particleAbility(Promise形式) + +- 返回值 + + Promise\ + +- 示例 + +```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 + +* 接口说明 + + 断开与指定ServiceAbility的连接(callback形式) + +* disconnectAbility参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ------------- | ---- | ------------------------------ | +| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID | +| callback | 只读 | AsyncCallback\ | 是 | 被指定的回调方法 | + +* 返回值 + + 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\ + +* 接口说明 + + 断开与指定ServiceAbility的连接(promise形式) + +* disconnectAbility参数描述 + +| 名称 | 读写属性 | 类型 | 必填 | 描述 | +| ---------- | -------- | ------ | ---- | ------------------------------ | +| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID | + +* 返回值 + + Promise\ + +* 示例 + +```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\ | 否 | 表示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