Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
ba3112c1
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
ba3112c1
编写于
12月 31, 2021
作者:
X
xuchenghua09
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update js-apis
Signed-off-by:
N
xuchenghua09
<
xuchenghua09@huawei.com
>
上级
0a6d3fe9
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
3794 addition
and
3645 deletion
+3794
-3645
zh-cn/application-dev/reference/apis/js-apis-Context.md
zh-cn/application-dev/reference/apis/js-apis-Context.md
+555
-542
zh-cn/application-dev/reference/apis/js-apis-DataUriUtils.md
zh-cn/application-dev/reference/apis/js-apis-DataUriUtils.md
+118
-122
zh-cn/application-dev/reference/apis/js-apis-commonEvent.md
zh-cn/application-dev/reference/apis/js-apis-commonEvent.md
+910
-508
zh-cn/application-dev/reference/apis/js-apis-dataAbilityHelper.md
...plication-dev/reference/apis/js-apis-dataAbilityHelper.md
+866
-837
zh-cn/application-dev/reference/apis/js-apis-featureAbility.md
.../application-dev/reference/apis/js-apis-featureAbility.md
+702
-963
zh-cn/application-dev/reference/apis/js-apis-notification.md
zh-cn/application-dev/reference/apis/js-apis-notification.md
+249
-262
zh-cn/application-dev/reference/apis/js-apis-particleAbility.md
...application-dev/reference/apis/js-apis-particleAbility.md
+394
-411
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-Context.md
浏览文件 @
ba3112c1
# Context模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| Context.getOrCreateLocalDir(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getOrCreateLocalDir() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options?: PermissionOptions) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.requestPermissionsFromUser(permissions: Array
\<
string>, requestCode: number, resultCallback: AsyncCallback
\<
PermissionRequestResult>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo(callback: AsyncCallback
\<
ApplicationInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo(callback: AsyncCallback
\<
ProcessInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName(callback: AsyncCallback
\<
ElementName>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
**ohos.permission.RUNNING_LOCK permission**
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
```
#### Context.getOrCreateLocalDir(callback: AsyncCallback\<string>)
-
接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(callback形式)
-
getOrCreateLocalDir参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback
\<
string>) | 是 | 被指定的回调方法 |
-
返回值
根目录
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getOrCreateLocalDir
()
```
#### Context.getOrCreateLocalDir()
-
接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(Promise形式)
-
返回值
根目录
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getOrCreateLocalDir
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getOrCreateLocalDirCallback=======================>
"
);
});
```
#### Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback\<number>)
-
接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)
-
verifyPermission参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | ---------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 | PermissionOptions | 是 | 进程id |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 被指定的回调方法 |
-
PermissionOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------ |
| pid | 只读 | number | 否 | 进程id |
| uid | 只读 | number | 否 | 用户id |
-
返回值
如果PID和UID具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
bundle
from
'
@ohos.bundle
'
var
context
=
featureAbility
.
getContext
();
var
datainfo
=
await
bundle
.
getBundleInfo
(
'
com.context.test
'
,
1
);
context
.
verifyPermission
(
"
com.example.permission
"
,
datainfo
.
uid
,)
```
#### Context.verifyPermission(permission: string, callback: AsyncCallback\<number>)
-
接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------------- | ---- | ---------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| callback | 只读 | AsyncCallback
\<
number>) | 是 | 被指定的回调方法 |
-
返回值
如果PID和UID具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
verifyPermission
(
"
com.example.permission
"
)
```
#### Context.verifyPermission(permission: string, options?: PermissionOptions)
-
接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(Promise形式)
-
verifyPermission参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------- | ---- | -------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 | PermissionOptions | 否 | 进程id |
-
PermissionOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------ |
| pid | 只读 | number | 否 | 进程id |
| uid | 只读 | number | 否 | 用户id |
-
返回值
如果PID和UID具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
var
Permission
=
context
.
PermissionOptions
(
1
,
1
);
context
.
getOrCreateLocalDir
(
'
com.context.permission
'
,
Permission
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>verifyPermissionCallback=======================>
"
);
});
```
#### Context.requestPermissionsFromUser(permissions: Array\<string>, requestCode: number, resultCallback: AsyncCallback\<PermissionRequestResult>)
-
接口说明
从系统请求某些权限(callback形式)
-
requestPermissionsFromUser参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ---------------------------------------- | ---- | --------------------------------------------- |
| permissions | 只读 | Array
\<
string> | 是 | 指示要请求的权限列表。此参数不能为null |
| requestCode | 只读 | number | 是 | 指示要传递给PermissionRequestResult的请求代码 |
| resultCallback | 只读 | AsyncCallback
\<
PermissionRequestResult>) | 是 | 被指定的回调方法 |
-
PermissionRequestResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------- | ---- | ------------------ |
| requestCode | 只读 | number | 是 | 用户传入的请求代码 |
| permissions | 只读 | Array
\<
string> | 是 | 用户传入的权限 |
| authResults | 只读 | Array
\<
number> | 是 | 求权限的结果 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getOrCreateLocalDir
(
[
"
com.example.permission1
"
,
"
com.example.permission2
"
,
"
com.example.permission3
"
,
"
com.example.permission4
"
,
"
com.example.permission5
"
],
1
,
)
```
#### Context.getApplicationInfo(callback: AsyncCallback\<ApplicationInfo>)
-
接口说明
获取有关当前应用程序的信息(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
ApplicationInfo> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getApplicationInfo
()
```
#### Context.getApplicationInfo()
-
接口说明
获取有关当前应用程序的信息(Promise形式)
-
参数描述
Null
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getApplicationInfo
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getApplicationInfoCallback=======================>
"
);
});
```
#### Context.getBundleName(callback: AsyncCallback\<string>)
-
接口说明
获取当前ability的捆绑包名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getBundleName
()
```
#### Context.getBundleName()
-
接口说明
获取当前ability的捆绑包名称(Promise形式)
-
参数描述
Null
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getBundleName
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getBundleNameCallback=======================>
"
);
});
```
#### Context.getProcessInfo(callback: AsyncCallback\<ProcessInfo>)
-
接口说明
获取有关当前进程的信息,包括进程ID和名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
ProcessInfo> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessInfo
()
```
#### Context.getProcessInfo()
-
接口说明
获取有关当前进程的信息,包括进程ID和名称(Promise形式)
-
参数描述
Null
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessInfo
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getProcessInfoCallback=======================>
"
);
});
```
#### Context.getElementName(callback: AsyncCallback\<ElementName>)
-
接口说明
获取当前能力的ohos.bundle.ElementName对象。此方法仅适用于页面功能(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
ElementName> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getElementName
()
```
#### Context.getElementName()
-
接口说明
获取当前能力的ohos.bundle.ElementName对象。此方法仅适用于页面功能(Promise形式)
-
参数描述
Null
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getElementName
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getElementNameCallback=======================>
"
);
});
```
####
#### Context.getProcessName(callback: AsyncCallback\<string>)
-
接口说明
获取当前进程的名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessName
()
```
#### Context.getProcessName()
-
接口说明
获取当前进程的名称(Promise形式)
-
参数描述
Null
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessName
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getProcessNameCallback=======================>
"
);
});
```
#### Context.getCallingBundle(callback: AsyncCallback\<string>)
-
接口说明
获取调用当前能力的能力的捆绑包名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getCallingBundle
()
```
#### Context.getCallingBundle()
-
接口说明
获取调用当前能力的能力的捆绑包名称(Promise形式)
-
参数描述
Null
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getCallingBundle
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getCallingBundleCallback=======================>
"
);
});
```
# Context模块
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| Context.getOrCreateLocalDir(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getOrCreateLocalDir() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.verifyPermission(permission: string, options?: PermissionOptions) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.requestPermissionsFromUser(permissions: Array
\<
string>, requestCode: number, resultCallback: AsyncCallback
\<
PermissionRequestResult>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo(callback: AsyncCallback
\<
ApplicationInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getApplicationInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getBundleName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo(callback: AsyncCallback
\<
ProcessInfo>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessInfo() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName(callback: AsyncCallback
\<
ElementName>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getElementName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getProcessName() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle(callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| Context.getCallingBundle() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
## 导入模块
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
bundle
from
'
@ohos.bundle
'
```
Context对象是在featureAbility中创建实例,并通过featureAbility的getContext()接口返回,因此在使用Context时,必须导入@ohos.ability.featureAbility库。示例如下:
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getOrCreateLocalDir
()
```
## Context.getOrCreateLocalDir(callback: AsyncCallback<string>)
-
接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(callback形式)
-
getOrCreateLocalDir参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------ |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 返回应用程序的本地根目录 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getOrCreateLocalDir
((
err
,
data
)
=>
{
console
.
info
(
"
data=
"
+
data
);
})
```
## Context.getOrCreateLocalDir()
-
接口说明
获取应用程序的本地根目录。如果是第一次调用,将创建目录(Promise形式)
-
返回值
| 类型 | 说明 |
| --------------- | -------------------- |
| Promise
<string>
| 应用程序的本地根目录 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getOrCreateLocalDir
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getOrCreateLocalDirCallback=======================>
"
);
});
```
## PermissionOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------ |
| pid | 只读 | number | 否 | 进程id |
| uid | 只读 | number | 否 | 用户id |
## Context.verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback<number>)
-
接口说明
验证系统中运行的特定pid和uid是否允许指定的权限(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------------------------------------- | ---- | ----------------------------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 |
[
PermissionOptions
](
#PermissionOptions类型说明
)
| 是 | 进程id |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 返回权限验证结果,0有权限,-1无权限 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
bundle
from
'
@ohos.bundle
'
var
context
=
featureAbility
.
getContext
();
var
datainfo
=
await
bundle
.
getBundleInfo
(
'
com.context.test
'
,
1
);
context
.
verifyPermission
(
"
com.example.permission
"
,
datainfo
.
uid
)
```
## Context.verifyPermission(permission: string, callback: AsyncCallback<number>)
-
接口说明
验证系统中运行的特定pid和uid是否具有指定的权限(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ---------------------- | ---- | ----------------------------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 返回权限验证结果,0有权限,-1无权限 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
verifyPermission
(
"
com.example.permission
"
)
```
## Context.verifyPermission(permission: string, options?: PermissionOptions)
-
接口说明
验证系统中运行的特定pid和uid是否具有指定的权限(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ----------------------------------------------- | ---- | -------------- |
| permission | 只读 | string | 是 | 指定权限的名称 |
| options | 只读 |
[
PermissionOptions
](
#PermissionOptions类型说明
)
| 否 | 进程id |
-
返回值
| 类型 | 说明 |
| --------------- | ------------------------------------------------------------ |
| Promise
<number>
| 如果pid和uid具有权限,则使用{@code 0}进行异步回调;否则使用{@code-1}回调。 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
var
Permission
=
context
.
PermissionOptions
(
1
,
1
);
context
.
getOrCreateLocalDir
(
'
com.context.permission
'
,
Permission
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>verifyPermissionCallback=======================>
"
);
});
```
## PermissionRequestResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------- | ---- | ------------------ |
| requestCode | 只读 | number | 是 | 用户传入的请求代码 |
| permissions | 只读 | Array
\<
string> | 是 | 用户传入的权限 |
| authResults | 只读 | Array
\<
number> | 是 | 求权限的结果 |
## Context.requestPermissionsFromUser(permissions: Array<string>, requestCode: number, resultCallback: AsyncCallback<[PermissionRequestResult](#PermissionRequestResult类型说明)>)
-
接口说明
从系统请求某些权限(callback形式)
-
requestPermissionsFromUser参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------------------------------------------------------ | ---- | --------------------------------------------- |
| permissions | 只读 | Array
\<
string> | 是 | 指示要请求的权限列表。此参数不能为null |
| requestCode | 只读 | number | 是 | 指示要传递给PermissionRequestResult的请求代码 |
| resultCallback | 只读 | AsyncCallback
\<
[
PermissionRequestResult
](
#PermissionRequestResult类型说明
)
> | 是 | 返回授权结果信息 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getOrCreateLocalDir
(
[
"
com.example.permission1
"
,
"
com.example.permission2
"
,
"
com.example.permission3
"
,
"
com.example.permission4
"
,
"
com.example.permission5
"
],
1
,
)
```
## Context.getApplicationInfo(callback: AsyncCallback<ApplicationInfo>)
-
接口说明
获取有关当前应用程序的信息(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------------- | ---- | ---------------------- |
| callback | 只读 | AsyncCallback
\<
ApplicationInfo> | 是 | 返回当前应用程序的信息 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getApplicationInfo
()
```
## Context.getApplicationInfo
-
接口说明
获取有关当前应用程序的信息(Promise形式)
-
参数描述
无
-
返回值
| 类型 | 说明 |
| ------------------------ | ------------------ |
| Promise
<ApplicationInfo>
| 当前应用程序的信息 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getApplicationInfo
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getApplicationInfoCallback=======================>
"
);
});
```
## Context.getBundleName(callback: AsyncCallback<string>)
-
接口说明
获取当前ability的捆绑包名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | --------------------------- |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 返回当前ability的捆绑包名称 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getBundleName
()
```
## Context.getBundleName
-
接口说明
获取当前ability的捆绑包名称(Promise形式)
-
参数描述
无
-
返回值
| 类型 | 说明 |
| --------------- | ----------------------- |
| Promise
<string>
| 当前ability的捆绑包名称 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getBundleName
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getBundleNameCallback=======================>
"
);
});
```
## Context.getProcessInfo(callback: AsyncCallback<ProcessInfo>)
-
接口说明
获取有关当前进程的信息,包括进程ID和名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | ------------------ |
| callback | 只读 | AsyncCallback
\<
ProcessInfo> | 是 | 返回当前进程的信息 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessInfo
()
```
## Context.getProcessInfo
-
接口说明
获取有关当前进程的信息,包括进程id和名称(Promise形式)
-
参数描述
无
-
返回值
| 类型 | 说明 |
| -------------------- | -------------- |
| Promise
<ProcessInfo>
| 当前进程的信息 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessInfo
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getProcessInfoCallback=======================>
"
);
});
```
## Context.getElementName(callback: AsyncCallback<ElementName>)
-
接口说明
获取当前ability的ohos.bundle.ElementName对象。此方法仅适用于页面功能(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------------- | ---- | -------------------------------------------- |
| callback | 只读 | AsyncCallback
\<
ElementName> | 是 | 返回当前ability的ohos.bundle.ElementName对象 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getElementName
()
```
## Context.getElementName
-
接口说明
获取当前能力的ohos.bundle.ElementName对象。此方法仅适用于页面功能(Promise形式)
-
参数描述
无
-
返回值
| 类型 | 说明 |
| -------------------- | ---------------------------------------- |
| Promise
<ElementName>
| 当前ability的ohos.bundle.ElementName对象 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getElementName
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getElementNameCallback=======================>
"
);
});
```
## **Context.getProcessName(callback: AsyncCallback<string>)**
-
接口说明
获取当前进程的名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------ |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 返回当前进程的名称 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessName
()
```
## Context.getProcessName
-
接口说明
获取当前进程的名称(Promise形式)
-
参数描述
无
-
返回值
| 类型 | 说明 |
| --------------- | -------------- |
| Promise
<string>
| 当前进程的名称 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getProcessName
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getProcessNameCallback=======================>
"
);
});
```
## Context.getCallingBundle(callback: AsyncCallback<string>)
-
接口说明
获取调用当前ability捆绑包名称(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------- |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 返回当前ability捆绑包名称 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getCallingBundle
()
```
## Context.getCallingBundle
-
接口说明
获取调用当前ability捆绑包名称(Promise形式)
-
参数描述
无
-
返回值
| 类型 | 说明 |
| --------------- | ------------------------- |
| Promise
<string>
| 调用当前ability捆绑包名称 |
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
context
=
featureAbility
.
getContext
();
context
.
getCallingBundle
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getCallingBundleCallback=======================>
"
);
});
```
zh-cn/application-dev/reference/apis/js-apis-DataUriUtils.md
浏览文件 @
ba3112c1
### 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
,
)
```
zh-cn/application-dev/reference/apis/js-apis-commonEvent.md
浏览文件 @
ba3112c1
# CommonEvent模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- |
| CommonEvent.publish(event: string, callback: AsyncCallback
<void>
) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback
<void>
) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback
<CommonEventSubscriber>
) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback
<CommonEventData>
) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback
<void>
) | 支持 | 支持 | 支持 | 支持 | 不支持 |
#### 权限列表
| 系统公共事件宏 | 系统公共事件名称 | 订阅者所需权限 |
| ------------------------------------------------------------ | ----------------------------------------------------------- | ------------------------------------------------------------ |
| COMMON_EVENT_BOOT_COMPLETED | usual.event.BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_LOCKED_BOOT_COMPLETED | usual.event.LOCKED_BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_SHUTDOWN | usual.event.SHUTDOWN | 无 |
| COMMON_EVENT_BATTERY_CHANGED | usual.event.BATTERY_CHANGED | 无 |
| COMMON_EVENT_BATTERY_LOW | usual.event.BATTERY_LOW | 无 |
| COMMON_EVENT_BATTERY_OKAY | usual.event.BATTERY_OKAY | 无 |
| COMMON_EVENT_POWER_CONNECTED | usual.event.POWER_CONNECTED | 无 |
| COMMON_EVENT_POWER_DISCONNECTED | usual.event.POWER_DISCONNECTED | 无 |
| COMMON_EVENT_SCREEN_OFF | usual.event.SCREEN_OFF | 无 |
| COMMON_EVENT_SCREEN_ON | usual.event.SCREEN_ON | 无 |
| COMMON_EVENT_USER_PRESENT | usual.event.USER_PRESENT | 无 |
| COMMON_EVENT_TIME_TICK | usual.event.TIME_TICK | 无 |
| COMMON_EVENT_TIME_CHANGED | usual.event.TIME_CHANGED | 无 |
| COMMON_EVENT_DATE_CHANGED | usual.event.DATE_CHANGED | 无 |
| COMMON_EVENT_TIMEZONE_CHANGED | usual.event.TIMEZONE_CHANGED | 无 |
| COMMON_EVENT_CLOSE_SYSTEM_DIALOGS | usual.event.CLOSE_SYSTEM_DIALOGS | 无 |
| COMMON_EVENT_PACKAGE_ADDED | usual.event.PACKAGE_ADDED | 无 |
| COMMON_EVENT_PACKAGE_REPLACED | usual.event.PACKAGE_REPLACED | 无 |
| COMMON_EVENT_MY_PACKAGE_REPLACED | usual.event.MY_PACKAGE_REPLACED | 无 |
| COMMON_EVENT_PACKAGE_REMOVED | usual.event.PACKAGE_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FULLY_REMOVED | usual.event.PACKAGE_FULLY_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_CHANGED | usual.event.PACKAGE_CHANGED | 无 |
| COMMON_EVENT_PACKAGE_RESTARTED | usual.event.PACKAGE_RESTARTED | 无 |
| COMMON_EVENT_PACKAGE_DATA_CLEARED | usual.event.PACKAGE_DATA_CLEARED | 无 |
| COMMON_EVENT_PACKAGES_SUSPENDED | usual.event.PACKAGES_SUSPENDED | 无 |
| COMMON_EVENT_PACKAGES_UNSUSPENDED | usual.event.PACKAGES_UNSUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_SUSPENDED | usual.event.MY_PACKAGE_SUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_UNSUSPENDED | usual.event.MY_PACKAGE_UNSUSPENDED | 无 |
| COMMON_EVENT_UID_REMOVED | usual.event.UID_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FIRST_LAUNCH | usual.event.PACKAGE_FIRST_LAUNCH | 无 |
| COMMON_EVENT_PACKAGE_NEEDS_VERIFICATION | usual.event.PACKAGE_NEEDS_VERIFICATION | 无 |
| COMMON_EVENT_PACKAGE_VERIFIED | usual.event.PACKAGE_VERIFIED | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_AVAILABLE | usual.event.EXTERNAL_APPLICATIONS_AVAILABLE | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_UNAVAILABLE | usual.event.EXTERNAL_APPLICATIONS_UNAVAILABLE | 无 |
| COMMON_EVENT_CONFIGURATION_CHANGED | usual.event.CONFIGURATION_CHANGED | 无 |
| COMMON_EVENT_LOCALE_CHANGED | usual.event.LOCALE_CHANGED | 无 |
| COMMON_EVENT_MANAGE_PACKAGE_STORAGE | usual.event.MANAGE_PACKAGE_STORAGE | 无 |
| COMMON_EVENT_DRIVE_MODE | common.event.DRIVE_MODE | 无 |
| COMMON_EVENT_HOME_MODE | common.event.HOME_MODE | 无 |
| COMMON_EVENT_OFFICE_MODE | common.event.OFFICE_MODE | 无 |
| COMMON_EVENT_USER_STARTED | usual.event.USER_STARTED | 无 |
| COMMON_EVENT_USER_BACKGROUND | usual.event.USER_BACKGROUND | 无 |
| COMMON_EVENT_USER_FOREGROUND | usual.event.USER_FOREGROUND | 无 |
| COMMON_EVENT_USER_SWITCHED | usual.event.USER_SWITCHED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_STARTING | usual.event.USER_STARTING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_UNLOCKED | usual.event.USER_UNLOCKED | 无 |
| COMMON_EVENT_USER_STOPPING | usual.event.USER_STOPPING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_STOPPED | usual.event.USER_STOPPED | 无 |
| COMMON_EVENT_HWID_LOGIN | common.event.HWID_LOGIN | 无 |
| COMMON_EVENT_HWID_LOGOUT | common.event.HWID_LOGOUT | 无 |
| COMMON_EVENT_HWID_TOKEN_INVALID | common.event.HWID_TOKEN_INVALID | 无 |
| COMMON_EVENT_HWID_LOGOFF | common.event.HWID_LOGOFF | 无 |
| COMMON_EVENT_WIFI_POWER_STATE | usual.event.wifi.POWER_STATE | 无 |
| COMMON_EVENT_WIFI_SCAN_FINISHED | usual.event.wifi.SCAN_FINISHED | ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_RSSI_VALUE | usual.event.wifi.RSSI_VALUE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_CONN_STATE | usual.event.wifi.CONN_STATE | 无 |
| COMMON_EVENT_WIFI_HOTSPOT_STATE | usual.event.wifi.HOTSPOT_STATE | 无 |
| COMMON_EVENT_WIFI_AP_STA_JOIN | usual.event.wifi.WIFI_HS_STA_JOIN | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_AP_STA_LEAVE | usual.event.wifi.WIFI_HS_STA_LEAVE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_MPLINK_STATE_CHANGE | usual.event.wifi.mplink.STATE_CHANGE | ohos.permission.MPLINK_CHANGE_STATE |
| COMMON_EVENT_WIFI_P2P_CONN_STATE | usual.event.wifi.p2p.CONN_STATE_CHANGE | ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_P2P_STATE_CHANGED | usual.event.wifi.p2p.STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_STATE_CHANGED | usual.event.wifi.p2p.DEVICES_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_DISCOVERY_STATE_CHANGED | usual.event.wifi.p2p.PEER_DISCOVERY_STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_CURRENT_DEVICE_STATE_CHANGED | usual.event.wifi.p2p.CURRENT_DEVICE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_GROUP_STATE_CHANGED | usual.event.wifi.p2p.GROUP_STATE_CHANGED | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.handsfree.ag.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.a2dpsource.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsource.PLAYING_STATE_UPDATE" | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_AVRCP_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.AVRCP_CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CODEC_VALUE_UPDATE | usual.event.bluetooth.a2dpsource.CODEC_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_DISCOVERED | usual.event.bluetooth.remotedevice.DISCOVERED | ohos.permission.USE_BLUETOOTH and ohos.permission.LOCATION |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CLASS_VALUE_UPDATE | usual.event.bluetooth.remotedevice.CLASS_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_CONNECTED | usual.event.bluetooth.remotedevice.ACL_CONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_DISCONNECTED | usual.event.bluetooth.remotedevice.ACL_DISCONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_NAME_UPDATE | usual.event.bluetooth.remotedevice.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIR_STATE | usual.event.bluetooth.remotedevice.PAIR_STATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_BATTERY_VALUE_UPDATE | usual.event.bluetooth.remotedevice.BATTERY_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_SDP_RESULT | usual.event.bluetooth.remotedevice.SDP_RESULT | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_UUID_VALUE | usual.event.bluetooth.remotedevice.UUID_VALUE | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_REQ | usual.event.bluetooth.remotedevice.PAIRING_REQ | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_CANCEL | usual.event.bluetooth.remotedevice.PAIRING_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REQ | usual.event.bluetooth.remotedevice.CONNECT_REQ | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REPLY | usual.event.bluetooth.remotedevice.CONNECT_REPLY | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_CANCEL | usual.event.bluetooth.remotedevice.CONNECT_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.CONNECT_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AUDIO_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_COMMON_EVENT | usual.event.bluetooth.handsfreeunit.AG_COMMON_EVENT | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_CALL_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AG_CALL_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_STATE_UPDATE | usual.event.bluetooth.host.STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISCOVERABLE | usual.event.bluetooth.host.REQ_DISCOVERABLE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_ENABLE | usual.event.bluetooth.host.REQ_ENABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISABLE | usual.event.bluetooth.host.REQ_DISABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_SCAN_MODE_UPDATE | usual.event.bluetooth.host.SCAN_MODE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_STARTED | usual.event.bluetooth.host.DISCOVERY_STARTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_FINISHED | usual.event.bluetooth.host.DISCOVERY_FINISHED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_NAME_UPDATE | usual.event.bluetooth.host.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsink.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsink.PLAYING_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_AUDIO_STATE_UPDATE | usual.event.bluetooth.a2dpsink.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_NFC_ACTION_ADAPTER_STATE_CHANGED | usual.event.nfc.action.ADAPTER_STATE_CHANGED | 无 |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_ON_DETECTED | usual.event.nfc.action.RF_FIELD_ON_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_OFF_DETECTED | usual.event.nfc.action.RF_FIELD_OFF_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_DISCHARGING | usual.event.DISCHARGING | 无 |
| COMMON_EVENT_CHARGING | usual.event.CHARGING | 无 |
| COMMON_EVENT_DEVICE_IDLE_MODE_CHANGED | usual.event.DEVICE_IDLE_MODE_CHANGED | 无 |
| COMMON_EVENT_POWER_SAVE_MODE_CHANGED | usual.event.POWER_SAVE_MODE_CHANGED | 无 |
| COMMON_EVENT_USER_ADDED | usual.event.USER_ADDED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_REMOVED | usual.event.USER_REMOVED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_ABILITY_ADDED | common.event.ABILITY_ADDED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_REMOVED | common.event.ABILITY_REMOVED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_UPDATED | common.event.ABILITY_UPDATED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_LOCATION_MODE_STATE_CHANGED | usual.event.location.MODE_STATE_CHANGED | 无 |
| COMMON_EVENT_IVI_SLEEP | common.event.IVI_SLEEP | 无 |
| COMMON_EVENT_IVI_PAUSE | common.event.IVI_PAUSE | 无 |
| COMMON_EVENT_IVI_STANDBY | common.event.IVI_STANDBY | 无 |
| COMMON_EVENT_IVI_LASTMODE_SAVE | common.event.IVI_LASTMODE_SAVE | 无 |
| COMMON_EVENT_IVI_VOLTAGE_ABNORMAL | common.event.IVI_VOLTAGE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_HIGH_TEMPERATURE | common.event.IVI_HIGH_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_EXTREME_TEMPERATURE | common.event.IVI_EXTREME_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_ABNORMAL | common.event.IVI_TEMPERATURE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_VOLTAGE_RECOVERY | common.event.IVI_VOLTAGE_RECOVERY | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_RECOVERY | common.event.IVI_TEMPERATURE_RECOVERY | 无 |
| COMMON_EVENT_IVI_ACTIVE | common.event.IVI_ACTIVE | 无 |
| COMMON_EVENT_USB_DEVICE_ATTACHED | usual.event.hardware.usb.action.USB_DEVICE_ATTACHED | 无 |
| COMMON_EVENT_USB_DEVICE_DETACHED | usual.event.hardware.usb.action.USB_DEVICE_DETACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_ATTACHED | usual.event.hardware.usb.action.USB_ACCESSORY_ATTACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_DETACHED | usual.event.hardware.usb.action.USB_ACCESSORY_DETACHED | 无 |
| COMMON_EVENT_DISK_REMOVED | usual.event.data.DISK_REMOVED | ohos.permission.WRITE_USER_STORAGE or ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTED | usual.event.data.DISK_UNMOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_MOUNTED | usual.event.data.DISK_MOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_BAD_REMOVAL | usual.event.data.DISK_BAD_REMOVAL | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTABLE | usual.event.data.DISK_UNMOUNTABLE | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_EJECT | usual.event.data.DISK_EJECT | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_VISIBLE_ACCOUNTS_UPDATED | usual.event.data.VISIBLE_ACCOUNTS_UPDATED | ohos.permission.GET_APP_ACCOUNTS |
| COMMON_EVENT_ACCOUNT_DELETED | usual.event.data.ACCOUNT_DELETED | ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS |
| COMMON_EVENT_FOUNDATION_READY | common.event.FOUNDATION_READY | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_AIRPLANE_MODE_CHANGED | usual.event.AIRPLANE_MODE | 无 |
#### 导入模块
```
js
import
CommonEvent
from
'
@ohos.commonevent
'
;
```
#### CommonEvent.publish(event: string, callback: AsyncCallback<void>)
-
接口说明
发布公共事件(callback形式)
*
publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------- | ---- | -------------------- |
| event | 只读 | string | 是 | 表示要发送的公共事件 |
| callback | 只读 | AsyncCallback
<void>
| 是 | 表示被指定的回调方法 |
*
返回值
void
*
示例
```
js
//发布公共事件回调
function
PublishCallBack
(
err
)
{
console
.
info
(
"
==========================>PublishCallBack=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
}
//发布公共事件
CommonEvent
.
publish
(
"
publish_event
"
,
PublishCallBack
);
```
#### CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback<void>)
-
接口说明
发布公共事件指定发布信息(callback形式)
-
publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ---------------------- |
| event | 只读 | string | 是 | 表示要发布的公共事件 |
| options | 只读 | CommonEventPublishData | 是 | 表示发布公共事件的属性 |
| callback | 只读 | AsyncCallback
<void>
| 是 | 表示被指定的回调方法 |
-
CommonEventPublishData类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------------------- | -------- | -------------------- | ---- | ---------------------------- |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | int | 否 | 表示公共事件的结果代码 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据 |
| subscriberPermissions | 只读 | Array
<string>
| 否 | 表示订阅者的权限 |
| isOrdered | 只读 | bool | 否 | 表示是否是有序事件 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
-
返回值
void
-
示例
```
js
//公共事件相关信息
var
options
=
{
code
:
0
;
//公共事件的初始代码
data
:
"
initial data
"
;
//公共事件的初始数据
isOrdered
:
true
;
//有序公共事件
}
//发布公共事件回调
function
PublishCallBack
(
err
)
{
console
.
info
(
"
==========================>PublishCallBack=======================>
"
);
}
//发布公共事件
CommonEvent
.
publish
(
"
publish_event
"
,
options
,
PublishCallBack
);
```
#### CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback<CommonEventSubscriber>)
-
接口说明
创建订阅者(callback形式)
-
createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ------------------------------------ | ---- | ------------------------ |
| subscribeInfo | 只读 | CommonEventSubscribeInfo | 是 | 表示订阅信息 |
| callback | 只读 | AsyncCallback
<CommonEventSubscriber>
| 是 | 表示创建订阅者的回调方法 |
-
CommonEventSubscriber 类说明
| 名称 | 参数 | 返回值 | 描述 |
| --------------------- | --------------------------------------------------------- | --------------------------------- | ------------------------------------------------------------ |
| getCode | callback: AsyncCallback
<number>
| void | 获取公共事件的结果代码(callback形式) |
| getCode | void | Promise
<number>
| 获取公共事件的结果代码(Promise形式) |
| setCode | code: number, callback: AsyncCallback
<void>
| void | 设置公共事件的结果代码(callback形式) |
| setCode | code: number | Promise
<void>
| 设置公共事件的结果代码(Promise形式) |
| getData | callback: AsyncCallback
<string>
| void | 获取公共事件的结果数据(callback形式) |
| getData | void | Promise
<string>
| 获取公共事件的结果数据(Promise形式) |
| setData | data: string, callback: AsyncCallback
<void>
| void | 设置公共事件的结果数据(callback形式) |
| setData | data: string | Promise
<void>
| 设置公共事件的结果数据(Promise形式) |
| setCodeAndData | code: number, data: string, callback: AsyncCallback
<void>
| void | 设置公共事件的结果代码和结果数据(callback形式) |
| setCodeAndData | code: number, data: string | Promise
<void>
| 设置公共事件的结果代码和结果数据(Promise形式) |
| isOrderedCommonEvent | callback: AsyncCallback
<boolean>
| void | 查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(callback形式) |
| isOrderedCommonEvent | void | Promise
<bool>
| 查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(Promise形式) |
| abortCommonEvent | callback: AsyncCallback
<void>
| void | 取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式) |
| abortCommonEvent | void | Promise
<void>
| 取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式) |
| clearAbortCommonEvent | callback: AsyncCallback
<void>
| void | 清除当前有序公共事件abort状态(callback形式) |
| clearAbortCommonEvent | void | Promise
<void>
| 清除当前有序公共事件abort状态(Promise形式) |
| getAbortCommonEvent | callback: AsyncCallback
<boolean>
| void | 获取当前有序公共事件是否取消的状态(callback形式) |
| getAbortCommonEvent | void | Promise
<boolean>
| 获取当前有序公共事件是否取消的状态Promise形式) |
| getSubscribeInfo | callback: AsyncCallback
<CommonEventSubscribeInfo>
| void | 获取订阅者的订阅信息(callback形式) |
| getSubscribeInfo | void | Promise
<CommonEventSubscribeInfo>
| 获取订阅者的订阅信息(Promise形式) |
-
CommonEventSubscribeInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------------- | ---- | ------------------------------------------------------------ |
| events | 只读 | Array
<string>
| 是 | 表示要订阅的公共事件 |
| publisherPermission | 只读 | string | 否 | 表示发布者的权限 |
| publisherDeviceId | 只读 | int | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID |
| userId | 只读 | int | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 |
| priority | 只读 | int | 否 | 表示订阅者的优先级,范围为-100~1000。 |
-
返回值
void
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//创建订阅者回调
function
CreateSubscriberCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>CreateSubscriberCallBack=======================>
"
);
subscriber
=
data
;
}
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
,
CreateSubscriberCallBack
);
```
#### CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo)
-
接口说明
创建订阅者(Promise形式)
-
createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ------------------------ | ---- | ------------ |
| subscribeInfo | 只读 | CommonEventSubscribeInfo | 是 | 表示订阅信息 |
-
CommonEventSubscribeInfo类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------------- | ---- | ------------------------------------------------------------ |
| events | 只读 | Array
<string>
| 是 | 表示要发送的公共事件 |
| publisherPermission | 只读 | string | 否 | 表示发布者的权限 |
| publisherDeviceId | 只读 | int | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID |
| userId | 只读 | int | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 |
| priority | 只读 | int | 否 | 表示订阅者的优先级。值的范围是-100到1000 |
-
返回值
Promise
<CommonEventSubscriber>
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>createSubscriberPromise=======================>
"
);
subscriber
=
data
;
});
```
#### CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback<CommonEventData>)
-
接口说明
订阅公共事件(callback形式)
-
subscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------------------------ | ---- | ------------------------------ |
| subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback
<CommonEventData>
| 是 | 表示接收公共事件数据的回调函数 |
-
CommonEventData类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | -------------------- | ---- | ------------------------------------------------------- |
| event | 只读 | string | 是 | 表示当前接收的公共事件名称 |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | int | 否 | 表示公共事件的结果代码,用于传递int类型的数据 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据,用于传递string 类型的数据 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
-
返回值
void
-
示例
*
无序事件:
```js
var subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var subscribeInfo = {
events: ["event"]
};
//订阅公共事件回调
function SubscribeCallBack(err, data) {
console.info("==========================>SubscribeCallBack=======================>");
}
//创建订阅者回调
function CreateSubscriberCallBack(err, data) {
console.info("==========================>CreateSubscriberCallBack=======================>");
subscriber = data;
//订阅公共事件
CommonEvent.subscribe(subscriber, SubscribeCallBack);
}
//创建订阅者
CommonEvent.createSubscriber(subscribeInfo, CreateSubscriberCallBack);
```
*
有序事件
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//设置有序公共事件的结果代码回调
function
SetCodeCallBack
(
err
)
{
console
.
info
(
"
==========================>SetCodeCallBack=======================>
"
);
}
//设置有序公共事件的结果数据回调
function
SetDataCallBack
(
err
)
{
console
.
info
(
"
==========================>SetDataCallBack=======================>
"
);
}
//完成本次有序公共事件处理回调
function
FinishCommonEventCallBack
(
err
)
{
console
.
info
(
"
==========================>FinishCommonEventCallBack=======================>
"
);
}
//订阅公共事件回调
function
SubscribeCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>SubscribeCallBack=======================>
"
);
//设置有序公共事件的结果代码
subscriber
.
setCode
(
0
,
SetCodeCallBack
);
//设置有序公共事件的结果数据
subscriber
.
setData
(
"
publish_data_changed
"
,
SetDataCallBack
);
//完成本次有序公共事件处理
subscriber
.
finishCommonEvent
(
FinishCommonEventCallBack
)
}
//创建订阅者回调
function
CreateSubscriberCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>CreateSubscriberCallBack=======================>
"
);
subscriber
=
data
;
//订阅公共事件
CommonEvent
.
subscribe
(
subscriber
,
SubscribeCallBack
);
}
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
,
CreateSubscriberCallBack
);
```
#### CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback<void>)
-
接口说明
取消订阅公共事件(callback形式)
-
unsubscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------- | ---- | ---------------------- |
| subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback
<void>
| 是 | 表示取消订阅的回调方法 |
-
返回值
void
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//订阅公共事件回调
function
SubscribeCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>SubscribeCallBack=======================>
"
);
}
//创建订阅者回调
function
CreateSubscriberCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>CreateSubscriberCallBack=======================>
"
);
subscriber
=
data
;
//订阅公共事件
CommonEvent
.
subscribe
(
subscriber
,
SubscribeCallBack
);
}
//取消订阅公共事件回调
function
UnsubscribeCallBack
(
err
)
{
console
.
info
(
"
==========================>UnsubscribeCallBack=======================>
"
);
}
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
,
CreateSubscriberCallBack
);
//取消订阅公共事件
CommonEvent
.
unsubscribe
(
subscriber
,
UnsubscribeCallBack
);
```
# 公共事件模块
**说明:**
本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- |
| CommonEvent.publish(event: string, callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback
\<
CommonEventSubscriber>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback
\<
CommonEventData>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
| CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 |
## 权限列表
| 系统公共事件宏 | 系统公共事件名称 | 订阅者所需权限 |
| ------------------------------------------------------------ | ----------------------------------------------------------- | ------------------------------------------------------------ |
| COMMON_EVENT_BOOT_COMPLETED | usual.event.BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_LOCKED_BOOT_COMPLETED | usual.event.LOCKED_BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_SHUTDOWN | usual.event.SHUTDOWN | 无 |
| COMMON_EVENT_BATTERY_CHANGED | usual.event.BATTERY_CHANGED | 无 |
| COMMON_EVENT_BATTERY_LOW | usual.event.BATTERY_LOW | 无 |
| COMMON_EVENT_BATTERY_OKAY | usual.event.BATTERY_OKAY | 无 |
| COMMON_EVENT_POWER_CONNECTED | usual.event.POWER_CONNECTED | 无 |
| COMMON_EVENT_POWER_DISCONNECTED | usual.event.POWER_DISCONNECTED | 无 |
| COMMON_EVENT_SCREEN_OFF | usual.event.SCREEN_OFF | 无 |
| COMMON_EVENT_SCREEN_ON | usual.event.SCREEN_ON | 无 |
| COMMON_EVENT_USER_PRESENT | usual.event.USER_PRESENT | 无 |
| COMMON_EVENT_TIME_TICK | usual.event.TIME_TICK | 无 |
| COMMON_EVENT_TIME_CHANGED | usual.event.TIME_CHANGED | 无 |
| COMMON_EVENT_DATE_CHANGED | usual.event.DATE_CHANGED | 无 |
| COMMON_EVENT_TIMEZONE_CHANGED | usual.event.TIMEZONE_CHANGED | 无 |
| COMMON_EVENT_CLOSE_SYSTEM_DIALOGS | usual.event.CLOSE_SYSTEM_DIALOGS | 无 |
| COMMON_EVENT_PACKAGE_ADDED | usual.event.PACKAGE_ADDED | 无 |
| COMMON_EVENT_PACKAGE_REPLACED | usual.event.PACKAGE_REPLACED | 无 |
| COMMON_EVENT_MY_PACKAGE_REPLACED | usual.event.MY_PACKAGE_REPLACED | 无 |
| COMMON_EVENT_PACKAGE_REMOVED | usual.event.PACKAGE_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FULLY_REMOVED | usual.event.PACKAGE_FULLY_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_CHANGED | usual.event.PACKAGE_CHANGED | 无 |
| COMMON_EVENT_PACKAGE_RESTARTED | usual.event.PACKAGE_RESTARTED | 无 |
| COMMON_EVENT_PACKAGE_DATA_CLEARED | usual.event.PACKAGE_DATA_CLEARED | 无 |
| COMMON_EVENT_PACKAGES_SUSPENDED | usual.event.PACKAGES_SUSPENDED | 无 |
| COMMON_EVENT_PACKAGES_UNSUSPENDED | usual.event.PACKAGES_UNSUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_SUSPENDED | usual.event.MY_PACKAGE_SUSPENDED | 无 |
| COMMON_EVENT_MY_PACKAGE_UNSUSPENDED | usual.event.MY_PACKAGE_UNSUSPENDED | 无 |
| COMMON_EVENT_UID_REMOVED | usual.event.UID_REMOVED | 无 |
| COMMON_EVENT_PACKAGE_FIRST_LAUNCH | usual.event.PACKAGE_FIRST_LAUNCH | 无 |
| COMMON_EVENT_PACKAGE_NEEDS_VERIFICATION | usual.event.PACKAGE_NEEDS_VERIFICATION | 无 |
| COMMON_EVENT_PACKAGE_VERIFIED | usual.event.PACKAGE_VERIFIED | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_AVAILABLE | usual.event.EXTERNAL_APPLICATIONS_AVAILABLE | 无 |
| COMMON_EVENT_EXTERNAL_APPLICATIONS_UNAVAILABLE | usual.event.EXTERNAL_APPLICATIONS_UNAVAILABLE | 无 |
| COMMON_EVENT_CONFIGURATION_CHANGED | usual.event.CONFIGURATION_CHANGED | 无 |
| COMMON_EVENT_LOCALE_CHANGED | usual.event.LOCALE_CHANGED | 无 |
| COMMON_EVENT_MANAGE_PACKAGE_STORAGE | usual.event.MANAGE_PACKAGE_STORAGE | 无 |
| COMMON_EVENT_DRIVE_MODE | common.event.DRIVE_MODE | 无 |
| COMMON_EVENT_HOME_MODE | common.event.HOME_MODE | 无 |
| COMMON_EVENT_OFFICE_MODE | common.event.OFFICE_MODE | 无 |
| COMMON_EVENT_USER_STARTED | usual.event.USER_STARTED | 无 |
| COMMON_EVENT_USER_BACKGROUND | usual.event.USER_BACKGROUND | 无 |
| COMMON_EVENT_USER_FOREGROUND | usual.event.USER_FOREGROUND | 无 |
| COMMON_EVENT_USER_SWITCHED | usual.event.USER_SWITCHED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_STARTING | usual.event.USER_STARTING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_UNLOCKED | usual.event.USER_UNLOCKED | 无 |
| COMMON_EVENT_USER_STOPPING | usual.event.USER_STOPPING | ohos.permission.INTERACT_ACROSS_USERS |
| COMMON_EVENT_USER_STOPPED | usual.event.USER_STOPPED | 无 |
| COMMON_EVENT_HWID_LOGIN | common.event.HWID_LOGIN | 无 |
| COMMON_EVENT_HWID_LOGOUT | common.event.HWID_LOGOUT | 无 |
| COMMON_EVENT_HWID_TOKEN_INVALID | common.event.HWID_TOKEN_INVALID | 无 |
| COMMON_EVENT_HWID_LOGOFF | common.event.HWID_LOGOFF | 无 |
| COMMON_EVENT_WIFI_POWER_STATE | usual.event.wifi.POWER_STATE | 无 |
| COMMON_EVENT_WIFI_SCAN_FINISHED | usual.event.wifi.SCAN_FINISHED | ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_RSSI_VALUE | usual.event.wifi.RSSI_VALUE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_CONN_STATE | usual.event.wifi.CONN_STATE | 无 |
| COMMON_EVENT_WIFI_HOTSPOT_STATE | usual.event.wifi.HOTSPOT_STATE | 无 |
| COMMON_EVENT_WIFI_AP_STA_JOIN | usual.event.wifi.WIFI_HS_STA_JOIN | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_AP_STA_LEAVE | usual.event.wifi.WIFI_HS_STA_LEAVE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_MPLINK_STATE_CHANGE | usual.event.wifi.mplink.STATE_CHANGE | ohos.permission.MPLINK_CHANGE_STATE |
| COMMON_EVENT_WIFI_P2P_CONN_STATE | usual.event.wifi.p2p.CONN_STATE_CHANGE | ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION |
| COMMON_EVENT_WIFI_P2P_STATE_CHANGED | usual.event.wifi.p2p.STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_STATE_CHANGED | usual.event.wifi.p2p.DEVICES_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_PEERS_DISCOVERY_STATE_CHANGED | usual.event.wifi.p2p.PEER_DISCOVERY_STATE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_CURRENT_DEVICE_STATE_CHANGED | usual.event.wifi.p2p.CURRENT_DEVICE_CHANGE | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_WIFI_P2P_GROUP_STATE_CHANGED | usual.event.wifi.p2p.GROUP_STATE_CHANGED | ohos.permission.GET_WIFI_INFO |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.handsfree.ag.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.a2dpsource.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsource.PLAYING_STATE_UPDATE" | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_AVRCP_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.AVRCP_CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CODEC_VALUE_UPDATE | usual.event.bluetooth.a2dpsource.CODEC_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_DISCOVERED | usual.event.bluetooth.remotedevice.DISCOVERED | ohos.permission.USE_BLUETOOTH and ohos.permission.LOCATION |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CLASS_VALUE_UPDATE | usual.event.bluetooth.remotedevice.CLASS_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_CONNECTED | usual.event.bluetooth.remotedevice.ACL_CONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_DISCONNECTED | usual.event.bluetooth.remotedevice.ACL_DISCONNECTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_NAME_UPDATE | usual.event.bluetooth.remotedevice.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIR_STATE | usual.event.bluetooth.remotedevice.PAIR_STATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_BATTERY_VALUE_UPDATE | usual.event.bluetooth.remotedevice.BATTERY_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_SDP_RESULT | usual.event.bluetooth.remotedevice.SDP_RESULT | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_UUID_VALUE | usual.event.bluetooth.remotedevice.UUID_VALUE | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_REQ | usual.event.bluetooth.remotedevice.PAIRING_REQ | ohos.permission.DISCOVER_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_CANCEL | usual.event.bluetooth.remotedevice.PAIRING_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REQ | usual.event.bluetooth.remotedevice.CONNECT_REQ | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REPLY | usual.event.bluetooth.remotedevice.CONNECT_REPLY | 无 |
| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_CANCEL | usual.event.bluetooth.remotedevice.CONNECT_CANCEL | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.CONNECT_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AUDIO_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_COMMON_EVENT | usual.event.bluetooth.handsfreeunit.AG_COMMON_EVENT | 无 |
| COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_CALL_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AG_CALL_STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_STATE_UPDATE | usual.event.bluetooth.host.STATE_UPDATE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISCOVERABLE | usual.event.bluetooth.host.REQ_DISCOVERABLE | 无 |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_ENABLE | usual.event.bluetooth.host.REQ_ENABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISABLE | usual.event.bluetooth.host.REQ_DISABLE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_SCAN_MODE_UPDATE | usual.event.bluetooth.host.SCAN_MODE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_STARTED | usual.event.bluetooth.host.DISCOVERY_STARTED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_FINISHED | usual.event.bluetooth.host.DISCOVERY_FINISHED | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_HOST_NAME_UPDATE | usual.event.bluetooth.host.NAME_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsink.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsink.PLAYING_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_BLUETOOTH_A2DPSINK_AUDIO_STATE_UPDATE | usual.event.bluetooth.a2dpsink.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH |
| COMMON_EVENT_NFC_ACTION_ADAPTER_STATE_CHANGED | usual.event.nfc.action.ADAPTER_STATE_CHANGED | 无 |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_ON_DETECTED | usual.event.nfc.action.RF_FIELD_ON_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_NFC_ACTION_RF_FIELD_OFF_DETECTED | usual.event.nfc.action.RF_FIELD_OFF_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS |
| COMMON_EVENT_DISCHARGING | usual.event.DISCHARGING | 无 |
| COMMON_EVENT_CHARGING | usual.event.CHARGING | 无 |
| COMMON_EVENT_DEVICE_IDLE_MODE_CHANGED | usual.event.DEVICE_IDLE_MODE_CHANGED | 无 |
| COMMON_EVENT_POWER_SAVE_MODE_CHANGED | usual.event.POWER_SAVE_MODE_CHANGED | 无 |
| COMMON_EVENT_USER_ADDED | usual.event.USER_ADDED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_USER_REMOVED | usual.event.USER_REMOVED | ohos.permission.MANAGE_USERS |
| COMMON_EVENT_ABILITY_ADDED | common.event.ABILITY_ADDED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_REMOVED | common.event.ABILITY_REMOVED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_ABILITY_UPDATED | common.event.ABILITY_UPDATED | ohos.permission.LISTEN_BUNDLE_CHANGE |
| COMMON_EVENT_LOCATION_MODE_STATE_CHANGED | usual.event.location.MODE_STATE_CHANGED | 无 |
| COMMON_EVENT_IVI_SLEEP | common.event.IVI_SLEEP | 无 |
| COMMON_EVENT_IVI_PAUSE | common.event.IVI_PAUSE | 无 |
| COMMON_EVENT_IVI_STANDBY | common.event.IVI_STANDBY | 无 |
| COMMON_EVENT_IVI_LASTMODE_SAVE | common.event.IVI_LASTMODE_SAVE | 无 |
| COMMON_EVENT_IVI_VOLTAGE_ABNORMAL | common.event.IVI_VOLTAGE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_HIGH_TEMPERATURE | common.event.IVI_HIGH_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_EXTREME_TEMPERATURE | common.event.IVI_EXTREME_TEMPERATURE | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_ABNORMAL | common.event.IVI_TEMPERATURE_ABNORMAL | 无 |
| COMMON_EVENT_IVI_VOLTAGE_RECOVERY | common.event.IVI_VOLTAGE_RECOVERY | 无 |
| COMMON_EVENT_IVI_TEMPERATURE_RECOVERY | common.event.IVI_TEMPERATURE_RECOVERY | 无 |
| COMMON_EVENT_IVI_ACTIVE | common.event.IVI_ACTIVE | 无 |
| COMMON_EVENT_USB_DEVICE_ATTACHED | usual.event.hardware.usb.action.USB_DEVICE_ATTACHED | 无 |
| COMMON_EVENT_USB_DEVICE_DETACHED | usual.event.hardware.usb.action.USB_DEVICE_DETACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_ATTACHED | usual.event.hardware.usb.action.USB_ACCESSORY_ATTACHED | 无 |
| COMMON_EVENT_USB_ACCESSORY_DETACHED | usual.event.hardware.usb.action.USB_ACCESSORY_DETACHED | 无 |
| COMMON_EVENT_DISK_REMOVED | usual.event.data.DISK_REMOVED | ohos.permission.WRITE_USER_STORAGE or ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTED | usual.event.data.DISK_UNMOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_MOUNTED | usual.event.data.DISK_MOUNTED | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_BAD_REMOVAL | usual.event.data.DISK_BAD_REMOVAL | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_UNMOUNTABLE | usual.event.data.DISK_UNMOUNTABLE | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_DISK_EJECT | usual.event.data.DISK_EJECT | ohos.permission.WRITE_USER_STORAGEor ohos.permission.READ_USER_STORAGE |
| COMMON_EVENT_VISIBLE_ACCOUNTS_UPDATED | usual.event.data.VISIBLE_ACCOUNTS_UPDATED | ohos.permission.GET_APP_ACCOUNTS |
| COMMON_EVENT_ACCOUNT_DELETED | usual.event.data.ACCOUNT_DELETED | ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS |
| COMMON_EVENT_FOUNDATION_READY | common.event.FOUNDATION_READY | ohos.permission.RECEIVER_STARTUP_COMPLETED |
| COMMON_EVENT_AIRPLANE_MODE_CHANGED | usual.event.AIRPLANE_MODE | 无 |
## 导入模块
```
js
import
CommonEvent
from
'
@ohos.commonevent
'
;
```
## CommonEvent.publish(event: string, callback: AsyncCallback\<void>): void
-
接口说明
发布公共事件(callback形式)
*
publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | -------------------- |
| event | 只读 | string | 是 | 表示要发送的公共事件 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
*
示例
```
js
//发布公共事件回调
function
PublishCallBack
(
err
)
{
console
.
info
(
"
==========================>PublishCallBack=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
}
//发布公共事件
CommonEvent
.
publish
(
"
publish_event
"
,
PublishCallBack
);
```
## CommonEvent.publish(event: string, options: CommonEventPublishData, callback: AsyncCallback\<void>): void
-
接口说明
发布公共事件指定发布信息(callback形式)
-
publish参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ---------------------- |
| event | 只读 | string | 是 | 表示要发布的公共事件 |
| options | 只读 |
[
CommonEventPublishData
](
#publishData
)
| 是 | 表示发布公共事件的属性 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
-
示例
```
js
//公共事件相关信息
var
options
=
{
code
:
0
;
//公共事件的初始代码
data
:
"
initial data
"
;
//公共事件的初始数据
isOrdered
:
true
;
//有序公共事件
}
//发布公共事件回调
function
PublishCallBack
(
err
)
{
console
.
info
(
"
==========================>PublishCallBack=======================>
"
);
}
//发布公共事件
CommonEvent
.
publish
(
"
publish_event
"
,
options
,
PublishCallBack
);
```
## CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback\<CommonEventSubscriber>): void
-
接口说明
创建订阅者(callback形式)
-
createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ---------------------------------------------------- | ---- | ------------------------ |
| subscribeInfo | 只读 |
[
CommonEventSubscribeInfo
](
#SubscribeInfo
)
| 是 | 表示订阅信息 |
| callback | 只读 | AsyncCallback
\<
[
CommonEventSubscriber
](
#Subscriber
)
> | 是 | 表示创建订阅者的回调方法 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//创建订阅者回调
function
CreateSubscriberCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>CreateSubscriberCallBack=======================>
"
);
subscriber
=
data
;
}
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
,
CreateSubscriberCallBack
);
```
## CommonEvent.createSubscriber(subscribeInfo: CommonEventSubscribeInfo): Promise\<CommonEventSubscriber>
-
接口说明
创建订阅者(Promise形式)
-
createSubscriber参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ------------------------------------------ | ---- | ------------ |
| subscribeInfo | 只读 |
[
CommonEventSubscribeInfo
](
#SubscribeInfo
)
| 是 | 表示订阅信息 |
-
返回值
Promise
\<
[
CommonEventSubscriber
](
#Subscriber
)
>
订阅者对象
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>createSubscriberPromise=======================>
"
);
subscriber
=
data
;
});
```
## CommonEvent.subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback\<CommonEventData>): void
-
接口说明
订阅公共事件(callback形式)
-
subscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------------------------- | ---- | ------------------------------ |
| subscriber | 只读 |
[
CommonEventSubscriber
](
#Subscriber
)
| 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback
\<
[
CommonEventData
](
#CommonEventData
)
> | 是 | 表示接收公共事件数据的回调函数 |
-
示例
无序事件:
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//订阅公共事件回调
function
SubscribeCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>SubscribeCallBack=======================>
"
);
}
//创建订阅者回调
function
CreateSubscriberCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>CreateSubscriberCallBack=======================>
"
);
subscriber
=
data
;
//订阅公共事件
CommonEvent
.
subscribe
(
subscriber
,
SubscribeCallBack
);
}
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
,
CreateSubscriberCallBack
);
```
有序事件:
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//设置有序公共事件的结果代码回调
function
SetCodeCallBack
(
err
)
{
console
.
info
(
"
==========================>SetCodeCallBack=======================>
"
);
}
//设置有序公共事件的结果数据回调
function
SetDataCallBack
(
err
)
{
console
.
info
(
"
==========================>SetDataCallBack=======================>
"
);
}
//完成本次有序公共事件处理回调
function
FinishCommonEventCallBack
(
err
)
{
console
.
info
(
"
==========================>FinishCommonEventCallBack=======================>
"
);
}
//订阅公共事件回调
function
SubscribeCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>SubscribeCallBack=======================>
"
);
//设置有序公共事件的结果代码
subscriber
.
setCode
(
0
,
SetCodeCallBack
);
//设置有序公共事件的结果数据
subscriber
.
setData
(
"
publish_data_changed
"
,
SetDataCallBack
);
//完成本次有序公共事件处理
subscriber
.
finishCommonEvent
(
FinishCommonEventCallBack
)
}
//创建订阅者回调
function
CreateSubscriberCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>CreateSubscriberCallBack=======================>
"
);
subscriber
=
data
;
//订阅公共事件
CommonEvent
.
subscribe
(
subscriber
,
SubscribeCallBack
);
}
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
,
CreateSubscriberCallBack
);
```
## CommonEvent.unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback\<void>): void
-
接口说明
取消订阅公共事件(callback形式)
-
unsubscribe参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------- | ---- | ---------------------- |
| subscriber | 只读 | CommonEventSubscriber | 是 | 表示订阅者对象 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 表示取消订阅的回调方法 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//订阅者信息
var
subscribeInfo
=
{
events
:
[
"
event
"
]
};
//订阅公共事件回调
function
SubscribeCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>SubscribeCallBack=======================>
"
);
}
//创建订阅者回调
function
CreateSubscriberCallBack
(
err
,
data
)
{
console
.
info
(
"
==========================>CreateSubscriberCallBack=======================>
"
);
subscriber
=
data
;
//订阅公共事件
CommonEvent
.
subscribe
(
subscriber
,
SubscribeCallBack
);
}
//取消订阅公共事件回调
function
UnsubscribeCallBack
(
err
)
{
console
.
info
(
"
==========================>UnsubscribeCallBack=======================>
"
);
}
//创建订阅者
CommonEvent
.
createSubscriber
(
subscribeInfo
,
CreateSubscriberCallBack
);
//取消订阅公共事件
CommonEvent
.
unsubscribe
(
subscriber
,
UnsubscribeCallBack
);
```
## <span id = "publishData">CommonEventPublishData</span>
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------------------- | -------- | -------------------- | ---- | ---------------------------- |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | number | 否 | 表示公共事件的结果代码 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据 |
| subscriberPermissions | 只读 | Array
\<
string> | 否 | 表示订阅者的权限 |
| isOrdered | 只读 | boolean | 否 | 表示是否是有序事件 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
## <span id = "SubscribeInfo">CommonEventSubscribeInfo</span>
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | -------------- | ---- | ------------------------------------------------------------ |
| events | 只读 | Array
\<
string> | 是 | 表示要发送的公共事件 |
| publisherPermission | 只读 | string | 否 | 表示发布者的权限 |
| publisherDeviceId | 只读 | string | 否 | 表示设备ID,该值必须是同一ohos网络上的现有设备ID |
| userId | 只读 | number | 否 | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 |
| priority | 只读 | number | 否 | 表示订阅者的优先级。值的范围是-100到1000 |
## <span id = "CommonEventData">CommonEventData</span>
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | -------------------- | ---- | ------------------------------------------------------ |
| event | 只读 | string | 是 | 表示当前接收的公共事件名称 |
| bundleName | 只读 | string | 否 | 表示包名称 |
| code | 只读 | number | 否 | 表示公共事件的结果代码,用于传递int类型的数据 |
| data | 只读 | string | 否 | 表示公共事件的自定义结果数据,用于传递string类型的数据 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示公共事件的附加信息 |
## <span id = "Subscriber">CommonEventSubscriber</span>
### getCode(callback形式)
-
方法说明
获取公共事件的结果代码(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------ |
| callback | AsyncCallback
\<
number> | 是 | 公共事件的结果代码 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
getCodeCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getCodeCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
console
.
info
(
"
==========================>code:=======================>
"
,
data
);
}
subscriber
.
getCode
(
getCodeCallback
);
```
### getCode(Promise形式)
-
方法说明
获取公共事件的结果代码(Promise形式)
-
返回值
| 类型 | 说明 |
| ---------------- | ------------------ |
| Promise
\<
number> | 公共事件的结果代码 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
getCode
().
then
((
data
)
=>
{
console
.
info
(
"
==========================>getCodePromise=======================>
"
);
console
.
info
(
"
==========================>code:=======================>
"
,
data
);
});
```
### setCode(callback形式)
-
方法说明
设置公共事件的结果代码(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| code | number | 是 | 公共事件的结果代码 |
| callback | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
setCodeCallback
(
err
)
{
console
.
info
(
"
==========================>setCodeCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
}
subscriber
.
setCode
(
1
,
setCodeCallback
);
```
### setCode(Promise形式)
-
方法说明
设置公共事件的结果代码(Promise形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| ------ | ------ | ---- | ------------------ |
| code | number | 是 | 公共事件的结果代码 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
setCode
(
1
).
then
(()
=>
{
console
.
info
(
"
==========================>setCodePromise=======================>
"
);
});
```
### getData(callback形式)
-
方法说明
获取公共事件的结果数据(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------ |
| callback | AsyncCallback
\<
string> | 是 | 公共事件的结果数据 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
getDataCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getDataCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
console
.
info
(
"
==========================>data:=======================>
"
,
data
);
}
subscriber
.
getData
(
getDataCallback
);
```
### getData(Promise形式)
-
方法说明
获取公共事件的结果数据(Promise形式)
-
返回值
| 类型 | 说明 |
| ---------------- | ------------------ |
| Promise
\<
string> | 公共事件的结果数据 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
getData
().
then
((
data
)
=>
{
console
.
info
(
"
==========================>getDataPromise=======================>
"
);
console
.
info
(
"
==========================>data:=======================>
"
,
data
);
});
```
### setData(callback形式)
-
方法说明
设置公共事件的结果数据(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| data | string | 是 | 公共事件的结果数据 |
| callback | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
setDataCallback
(
err
)
{
console
.
info
(
"
==========================>setDataCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
}
subscriber
.
setData
(
"
publish_data_changed
"
,
setDataCallback
);
```
### setData(Promise形式)
-
方法说明
设置公共事件的结果数据(Promise形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| ------ | ------ | ---- | ------------------ |
| data | string | 是 | 公共事件的结果数据 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
setData
(
"
publish_data_changed
"
).
then
(()
=>
{
console
.
info
(
"
==========================>setDataPromise=======================>
"
);
});
```
### setCodeAndData(callback形式)
-
方法说明
设置公共事件的结果代码和结果数据(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| code | number | 是 | 公共事件的结果代码 |
| data | string | 是 | 公共事件的结果数据 |
| callback | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
setCodeDataCallback
(
err
)
{
console
.
info
(
"
==========================>setCodeDataCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
}
subscriber
.
setCodeAndData
(
1
,
"
publish_data_changed
"
,
setCodeDataCallback
);
```
### setCodeAndData(Promise形式)
-
方法说明
设置公共事件的结果代码和结果数据(Promise形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| ------ | ------ | ---- | ------------------ |
| code | number | 是 | 公共事件的结果代码 |
| data | string | 是 | 公共事件的结果数据 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
setCodeAndData
(
1
,
"
publish_data_changed
"
).
then
(()
=>
{
console
.
info
(
"
==========================>setCodeAndData=======================>
"
);
});
```
### isOrderedCommonEvent(callback形式)
-
方法说明
查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ----------------------- | ---- | -------------------------------- |
| callback | AsyncCallback
\<
boolean> | 是 | 当前公共事件的是否为有序公共事件 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
isOrderedCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>isOrderedCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
console
.
info
(
"
==========================>isOrdered:=======================>
"
,
data
);
}
subscriber
.
isOrderedCommonEvent
(
isOrderedCallback
);
```
### isOrderedCommonEvent(Promise形式)
-
方法说明
查询当前公共事件的是否为有序公共事件,返回true代表是有序公共事件,false代表不是有序公共事件(Promise形式)
-
返回值
| 类型 | 说明 |
| ----------------- | -------------------------------- |
| Promise
\<
boolean> | 当前公共事件的是否为有序公共事件 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
isOrderedCommonEvent
().
then
((
data
)
=>
{
console
.
info
(
"
==========================>isOrdered:=======================>
"
,
data
);
});
```
### abortCommonEvent(callback形式)
-
方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ----------------------- | ---- | ------------------ |
| callback | AsyncCallback
\<
boolean> | 是 | 取消当前的公共事件 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
abortCallback
(
err
)
{
console
.
info
(
"
==========================>abortCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
}
subscriber
.
abortCommonEvent
(
abortCallback
);
```
### abortCommonEvent(Promise形式)
-
方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式)
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
abortCommonEvent
().
then
(()
=>
{
console
.
info
(
"
==========================>abortCommonEvent:=======================>
"
);
});
```
### clearAbortCommonEvent(callback形式)
-
方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | -------------------- |
| callback | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
clearAbortCallback
(
err
)
{
console
.
info
(
"
==========================>clearAbortCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
}
subscriber
.
clearAbortCommonEvent
(
clearAbortCallback
);
```
### clearAbortCommonEvent(Promise形式)
-
方法说明
取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式)
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
clearAbortCommonEvent
().
then
(()
=>
{
console
.
info
(
"
==========================>clearAbortCommonEvent:=======================>
"
);
});
```
### getAbortCommonEvent(callback形式)
-
方法说明
获取当前有序公共事件是否取消的状态(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ----------------------- | ---- | ---------------------------------- |
| callback | AsyncCallback
\<
boolean> | 是 | 表示当前有序公共事件是否取消的状态 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
getAbortCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getAbortCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
console
.
info
(
"
==========================>abort:=======================>
"
,
data
);
}
subscriber
.
getAbortCommonEvent
(
getAbortCallback
);
```
### getAbortCommonEvent(Promise形式)
-
方法说明
获取当前有序公共事件是否取消的状态(Promise形式)
-
返回值
| 类型 | 说明 |
| ----------------- | ---------------------------------- |
| Promise
\<
boolean> | 表示当前有序公共事件是否取消的状态 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
getAbortCommonEvent
().
then
((
data
)
=>
{
console
.
info
(
"
==========================>getAbortCommonEvent:=======================>
"
);
console
.
info
(
"
==========================>abort:=======================>
"
,
data
);
});
```
### getSubscribeInfo(callback形式)
-
方法说明
获取订阅者的订阅信息(callback形式)
-
参数
| 参数名 | 类型 | 必填 | 描述 |
| -------- | ---------------------------------------- | ---- | -------------------- |
| callback | AsyncCallback
\<
CommonEventSubscribeInfo> | 是 | 表示订阅者的订阅信息 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
//设置有序公共事件的结果数据回调
function
getSubscribeInfoCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getSubscribeInfoCallback=======================>
"
);
console
.
info
(
"
==========================>err:=======================>
"
,
err
.
code
);
console
.
info
(
"
==========================>priority:=======================>
"
,
data
.
priority
);
}
subscriber
.
getSubscribeInfo
(
getSubscribeInfoCallback
);
```
### getSubscribeInfo(Promise形式)
-
方法说明
获取订阅者的订阅信息(Promise形式)
-
返回值
| 类型 | 说明 |
| ---------------------------------- | -------------------- |
| Promise
\<
CommonEventSubscribeInfo> | 表示订阅者的订阅信息 |
-
示例
```
js
var
subscriber
;
//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
subscriber
.
getSubscribeInfo
().
then
((
data
)
=>
{
console
.
info
(
"
==========================>getSubscribeInfo:=======================>
"
);
console
.
info
(
"
==========================>priority:=======================>
"
,
data
.
priority
);
});
```
\ No newline at end of file
zh-cn/application-dev/reference/apis/js-apis-dataAbilityHelper.md
浏览文件 @
ba3112c1
### DataAbilityHelper模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.openFile(uri: string, mode: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback
<Array
\<
string
>
>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string, callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array
<rdb.ValuesBucket>
, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array
<rdb.ValuesBucket>
) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array
\<
string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
\<
ResultSet>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array
\<
string>, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
import ohos_data_rdb from '@ohos.data.rdb'
```
#### DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback\<number>)
-
接口说明
在指定的远程路径中打开文件(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
*
返回值
返回文件描述符。
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
mode
=
"
rwt
"
;
DAHelper
.
openFile
(
"
dataability:///com.example.DataAbility
"
,
mode
,
)
```
#### DataAbilityHelper.openFile(uri: string, mode: string)
-
接口说明
在指定的远程路径中打开文件(Promise形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
*
返回值
返回文件描述符。
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
mode
=
"
rwt
"
;
DAHelper
.
openFile
(
"
dataability:///com.example.DataAbility
"
,
mode
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>openFileCallback=======================>
"
);
});
```
#### DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>)
-
接口说明
注册观察者以观察给定uri指定的数据(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 指示数据更改时的回调。 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
helper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
helper
.
on
(
"
dataChange
"
,
"
dataability:///com.example.DataAbility
"
,
)
```
#### DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>)
-
接口说明
注册观察者以观察给定uri指定的数据(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
void> | 否 | 指示已注册的回调。 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
helper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
helper
.
off
(
"
dataChange
"
,
"
dataability:///com.example.DataAbility
"
,
)
```
#### DataAbilityHelper.getType(uri: string, callback: AsyncCallback\<string>)
-
接口说明
获取给定URI指定的日期的MIME类型(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 回调方法 |
-
返回值
返回与uri指定的数据匹配的MIME类型。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getType
(
"
dataability:///com.example.DataAbility
"
)
```
#### DataAbilityHelper.getType(uri: string)
-
接口说明
获取给定URI指定的日期的MIME类型(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
-
返回值
返回与uri指定的数据匹配的MIME类型。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getType
(
"
dataability:///com.example.DataAbility
"
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>getTypeCallback=======================>
"
);
});
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>)
-
接口说明
获取支持的文件的MIME类型(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ---------------------- | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 回调方法 |
-
返回值
返回匹配的MIME类型数组。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getFileTypes
(
"
dataability:///com.example.DataAbility
"
,
"
image/*
"
)
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string)
-
接口说明
获取支持的文件的MIME类型(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
-
返回值
返回匹配的MIME类型数组。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getFileTypes
(
"
dataability:///com.example.DataAbility
"
,
"
image/*
"
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>getFileTypesCallback=======================>
"
);
});
```
#### DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\<string>)
-
接口说明
将引用数据功能的给定uri转换为规范化uri(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 回调方法 |
-
返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
normalizeUri
(
"
dataability:///com.example.DataAbility
"
,
)
```
#### DataAbilityHelper.normalizeUri(uri: string)
-
接口说明
将引用数据功能的给定uri转换为规范化uri(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
-
返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
normalizeUri
(
"
dataability:///com.example.DataAbility
"
,
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>normalizeUriCallback=======================>
"
);
});
```
#### DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\<string>)
-
接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 回调方法 |
-
返回值
如果反规范化成功,则返回反规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
denormalizeUri
(
"
dataability:///com.example.DataAbility
"
,
)
```
#### DataAbilityHelper.denormalizeUri(uri: string)
-
接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
-
返回值
如果反规范化成功,则返回反规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
denormalizeUri
(
"
dataability:///com.example.DataAbility
"
,
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>denormalizeUriCallback=======================>
"
);
});
```
#### DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\<void>)
-
接口说明
通知已注册的观察者uri指定的数据资源的更改(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
helper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
helper
.
notifyChange
(
"
dataability:///com.example.DataAbility
"
,
)
```
#### DataAbilityHelper.notifyChange(uri: string)
-
接口说明
通知已注册的观察者uri指定的数据资源的更改(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
notifyChange
(
"
dataability:///com.example.DataAbility
"
,
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>notifyChangeCallback=======================>
"
);
});
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>)
-
接口说明
将单个数据记录插入数据库(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回插入数据记录的索引。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
valueBucket
=
{
"
name
"
:
"
rose
"
,
"
age
"
:
22
,
"
salary
"
:
200.5
,
"
blobType
"
:
u8
,
}
DAHelper
.
insert
(
"
dataability:///com.example.DataAbility
"
,
valueBucket
)
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket)
-
接口说明
将单个数据记录插入数据库(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
-
返回值
返回插入数据记录的索引。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
valueBucket
=
{
"
name
"
:
"
rose1
"
,
"
age
"
:
221
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
DAHelper
.
insert
(
"
dataability:///com.example.DataAbility
"
,
valueBucket
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>insertCallback=======================>
"
);
});
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>, callback: AsyncCallback\<number>)
-
接口说明
将多个数据记录插入数据库(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array
<rdb.ValuesBucket>
| 是 | 指示要插入的数据记录。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回插入的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
name
"
:
"
roe11
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe12
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe13
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,})
DAHelper
.
batchInsert
(
"
dataability:///com.example.DataAbility
"
,
cars
)
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>)
-
接口说明
将多个数据记录插入数据库(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array
<rdb.ValuesBucket>
| 是 | 指示要插入的数据记录。 |
-
返回值
返回插入的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
name
"
:
"
roe11
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe12
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe13
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,})
DAHelper
.
batchInsert
(
"
dataability:///com.example.DataAbility
"
,
cars
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>batchInsertCallback=======================>
"
);
});
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
-
接口说明
从数据库中删除一个或多个数据记录(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回已删除的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
delete
(
"
dataability:///com.example.DataAbility
"
,
da
)
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates)
-
接口说明
从数据库中删除一个或多个数据记录(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
-
返回值
返回已删除的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
delete
(
"
dataability:///com.example.DataAbility
"
,
da
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>deleteCallback=======================>
"
);
});
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
-
接口说明
更新数据库中的数据记录(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回更新的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
va
=
{
"
name
"
:
"
roe1
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
update
(
"
dataability:///com.example.DataAbility
"
,
va
,
da
)
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates)
-
接口说明
更新数据库中的数据记录(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
-
返回值
返回更新的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
va
=
{
"
name
"
:
"
roe1
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
update
(
"
dataability:///com.example.DataAbility
"
,
va
,
da
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>updateCallback=======================>
"
);
});
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>)
-
接口说明
查询数据库中的数据(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要查询的数据的路径。 |
| columns | 只读 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback
\<
ResultSet> | 是 | 回调方法 |
-
返回值
返回查询结果
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
value1
"
},
{
"
value2
"
},
{
"
value3
"
},
{
"
value4
"
});
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
query
(
"
dataability:///com.example.DataAbility
"
,
cars
,
da
)
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates)
-
接口说明
查询数据库中的数据(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 读写 | string | 是 | 指示要查询的数据的路径。 |
| columns | 读写 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 读写 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
-
返回值
返回查询结果
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
await
featureAbility
.
getDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
value1
"
},
{
"
value2
"
},
{
"
value3
"
},
{
"
value4
"
});
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
query
(
"
dataability:///com.example.DataAbility
"
,
cars
,
da
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>queryCallback=======================>
"
);
});
```
### DataAbilityHelper模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.openFile(uri: string, mode: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback
<Array
\<
string
>
>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string, callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.getType(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.normalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback
\<
string>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.denormalizeUri(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.notifyChange(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array
<rdb.ValuesBucket>
, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array
<rdb.ValuesBucket>
) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array
\<
string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
\<
ResultSet>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| DataAbilityHelper.query(uri: string, columns: Array
\<
string>, predicates: dataAbility.DataAbilityPredicates) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
import ohos_data_ability from '@ohos.data.dataability'
import ohos_data_rdb from '@ohos.data.rdb'
```
#### DataAbilityHelper.openFile(uri: string, mode: string, callback: AsyncCallback\<number>)
-
接口说明
在指定的远程路径中打开文件(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
*
返回值
返回文件描述符。
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
mode
=
"
rwt
"
;
DAHelper
.
openFile
(
"
dataability:///com.example.DataAbility
"
,
mode
,
(
err
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.openFile(uri: string, mode: string)
-
接口说明
在指定的远程路径中打开文件(Promise形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要打开的文件的路径。 |
| mode | 只读 | string | 是 | 指示文件打开模式‘rwt’。 |
*
返回值
返回文件描述符。
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
mode
=
"
rwt
"
;
DAHelper
.
openFile
(
"
dataability:///com.example.DataAbility
"
,
mode
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>openFileCallback=======================>
"
);
});
```
#### DataAbilityHelper.on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>)
-
接口说明
注册观察者以观察给定uri指定的数据(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 指示数据更改时的回调。 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
helper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
function
onChangeNotify
()
{
console
.
info
(
"
==========================>onChangeNotify=======================>
"
);
};
helper
.
on
(
"
dataChange
"
,
"
dataability:///com.example.DataAbility
"
,
onChangeNotify
)
```
#### DataAbilityHelper.off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>)
-
接口说明
注册观察者以观察给定uri指定的数据(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| type | 只读 | string | 是 | 数据更改。 |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
void> | 否 | 指示已注册的回调。 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
helper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
function
onChangeNotify
()
{
console
.
info
(
"
==========================>onChangeNotify=======================>
"
);
};
helper
.
off
(
"
dataChange
"
,
"
dataability:///com.example.DataAbility
"
,
)
helper
.
off
(
"
dataChange
"
,
"
dataability:///com.example.DataAbility
"
,
onChangeNotify
)
```
#### DataAbilityHelper.getType(uri: string, callback: AsyncCallback\<string>)
-
接口说明
获取给定URI指定的日期的MIME类型(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 回调方法 |
-
返回值
返回与uri指定的数据匹配的MIME类型。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getType
(
"
dataability:///com.example.DataAbility
"
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.getType(uri: string)
-
接口说明
获取给定URI指定的日期的MIME类型(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
-
返回值
返回与uri指定的数据匹配的MIME类型。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getType
(
"
dataability:///com.example.DataAbility
"
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getTypeCallback=======================>
"
);
});
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>)
-
接口说明
获取支持的文件的MIME类型(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------------------------------ | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
| callback | 只读 | AsyncCallback
\<
Array
\<
string>> | 是 | 回调方法 |
-
返回值
返回匹配的MIME类型数组。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getFileTypes
(
"
dataability:///com.example.DataAbility
"
,
"
image/*
"
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.getFileTypes(uri: string, mimeTypeFilter: string)
-
接口说明
获取支持的文件的MIME类型(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ------ | ---- | ---------------------------- |
| uri | 只读 | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | 只读 | string | 是 | 指示要获取的文件的MIME类型。 |
-
返回值
返回匹配的MIME类型数组。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
getFileTypes
(
"
dataability:///com.example.DataAbility
"
,
"
image/*
"
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getFileTypesCallback=======================>
"
);
});
```
#### DataAbilityHelper.normalizeUri(uri: string, callback: AsyncCallback\<string>)
-
接口说明
将引用数据功能的给定uri转换为规范化uri(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 回调方法 |
-
返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
normalizeUri
(
"
dataability:///com.example.DataAbility
"
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.normalizeUri(uri: string)
-
接口说明
将引用数据功能的给定uri转换为规范化uri(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
-
返回值
如果数据功能支持uri规范化或null,则返回规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
normalizeUri
(
"
dataability:///com.example.DataAbility
"
,
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>normalizeUriCallback=======================>
"
);
});
```
#### DataAbilityHelper.denormalizeUri(uri: string, callback: AsyncCallback\<string>)
-
接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
| callback | 只读 | AsyncCallback
\<
string> | 是 | 回调方法 |
-
返回值
如果反规范化成功,则返回反规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
denormalizeUri
(
"
dataability:///com.example.DataAbility
"
,,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.denormalizeUri(uri: string)
-
接口说明
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ----------------------- |
| uri | 只读 | string | 是 | 指示要规范化的uri对象。 |
-
返回值
如果反规范化成功,则返回反规范化uri对象。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
denormalizeUri
(
"
dataability:///com.example.DataAbility
"
,
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>denormalizeUriCallback=======================>
"
);
});
```
#### DataAbilityHelper.notifyChange(uri: string, callback: AsyncCallback\<void>)
-
接口说明
通知已注册的观察者uri指定的数据资源的更改(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 回调方法 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
helper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
helper
.
notifyChange
(
"
dataability:///com.example.DataAbility
"
,,
(
err
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.notifyChange(uri: string)
-
接口说明
通知已注册的观察者uri指定的数据资源的更改(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要操作的数据的路径。 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
DAHelper
.
notifyChange
(
"
dataability:///com.example.DataAbility
"
,
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>notifyChangeCallback=======================>
"
);
});
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>)
-
接口说明
将单个数据记录插入数据库(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回插入数据记录的索引。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
valueBucket
=
{
"
name
"
:
"
rose
"
,
"
age
"
:
22
,
"
salary
"
:
200.5
,
"
blobType
"
:
u8
,
}
DAHelper
.
insert
(
"
dataability:///com.example.DataAbility
"
,
valueBucket
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.insert(uri: string, valuesBucket: rdb.ValuesBucket)
-
接口说明
将单个数据记录插入数据库(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ---------------- | ---- | ------------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
-
返回值
返回插入数据记录的索引。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
valueBucket
=
{
"
name
"
:
"
rose1
"
,
"
age
"
:
221
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
DAHelper
.
insert
(
"
dataability:///com.example.DataAbility
"
,
valueBucket
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>insertCallback=======================>
"
);
});
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>, callback: AsyncCallback\<number>)
-
接口说明
将多个数据记录插入数据库(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array
<rdb.ValuesBucket>
| 是 | 指示要插入的数据记录。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回插入的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
name
"
:
"
roe11
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe12
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe13
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,})
DAHelper
.
batchInsert
(
"
dataability:///com.example.DataAbility
"
,
cars
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>)
-
接口说明
将多个数据记录插入数据库(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | ----------------------- | ---- | ------------------------ |
| uri | 只读 | string | 是 | 指示要插入的数据的路径。 |
| valuesBucket | 只读 | Array
<rdb.ValuesBucket>
| 是 | 指示要插入的数据记录。 |
-
返回值
返回插入的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
name
"
:
"
roe11
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe12
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe13
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,})
DAHelper
.
batchInsert
(
"
dataability:///com.example.DataAbility
"
,
cars
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>batchInsertCallback=======================>
"
);
});
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
-
接口说明
从数据库中删除一个或多个数据记录(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回已删除的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
delete
(
"
dataability:///com.example.DataAbility
"
,
da
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.delete(uri: string, predicates: dataAbility.DataAbilityPredicates)
-
接口说明
从数据库中删除一个或多个数据记录(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要删除的数据的路径。 |
| valuesBucket | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
-
返回值
返回已删除的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
delete
(
"
dataability:///com.example.DataAbility
"
,
da
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>deleteCallback=======================>
"
);
});
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>)
-
接口说明
更新数据库中的数据记录(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 回调方法 |
-
返回值
返回更新的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
va
=
{
"
name
"
:
"
roe1
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
update
(
"
dataability:///com.example.DataAbility
"
,
va
,
da
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates)
-
接口说明
更新数据库中的数据记录(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要更新的数据的路径。 |
| valuesBucket | 只读 | rdb.ValuesBucket | 是 | 指示要更新的数据。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
-
返回值
返回更新的数据记录数。
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
const
va
=
{
"
name
"
:
"
roe1
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
update
(
"
dataability:///com.example.DataAbility
"
,
va
,
da
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>updateCallback=======================>
"
);
});
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>)
-
接口说明
查询数据库中的数据(callback形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 只读 | string | 是 | 指示要查询的数据的路径。 |
| columns | 只读 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 只读 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | 只读 | AsyncCallback
\<
ResultSet> | 是 | 回调方法 |
-
返回值
返回查询结果
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
value1
"
},
{
"
value2
"
},
{
"
value3
"
},
{
"
value4
"
});
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
query
(
"
dataability:///com.example.DataAbility
"
,
cars
,
da
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
#### DataAbilityHelper.query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates)
-
接口说明
查询数据库中的数据(Promise形式)
-
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------------------- | ---- | ------------------------------------------------ |
| uri | 读写 | string | 是 | 指示要查询的数据的路径。 |
| columns | 读写 | rdb.ValuesBucket | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| predicates | 读写 | dataAbility.DataAbilityPredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
-
返回值
返回查询结果
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
ohos_data_ability
from
'
@ohos.data.dataability
'
var
DAHelper
=
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.example.DataAbility
"
);
var
cars
=
new
Array
({
"
value1
"
},
{
"
value2
"
},
{
"
value3
"
},
{
"
value4
"
});
let
da
=
new
ohos_data_ability
.
DataAbilityPredicates
()
DAHelper
.
query
(
"
dataability:///com.example.DataAbility
"
,
cars
,
da
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>queryCallback=======================>
"
);
});
```
\ No newline at end of file
zh-cn/application-dev/reference/apis/js-apis-featureAbility.md
浏览文件 @
ba3112c1
# FeatureAbility模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback
\<
number>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbility(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.acquireDataAbilityHelper(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback
\<
AbilityResult>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus(callback: AsyncCallback
\<
boolean>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant(callback: AsyncCallback
\<
Want>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getContext() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf(callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.continueAbility(options: ContinueAbilityOptions, callback: AsyncCallback
<void>
) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 使用限制
FeatureAbility模块的接口只能在Page类型的Ability调用
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
```
#### FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>)
*
接口说明
启动新的ability(callback形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
-
StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
*
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
*
返回值
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
startAbility
(
{
want
:
{
action
:
""
,
entities
:
[
""
],
type
:
""
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.startability
"
,
abilityName
:
"
com.example.startability.MainAbility
"
,
uri
:
""
},
},
);
)
```
#### FeatureAbility.startAbility(parameter: StartAbilityParameter)
*
接口说明
启动新的ability(Promise形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
-
StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 表示被启动的PageAbility的设备id,缺省表示启动本地的PageAbility |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
*
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
*
返回值
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
startAbility
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
deviceId
,
bundleName
:
"
com.example.startability
"
,
abilityName
:
"
com.example.startability.MainAbility
"
,
uri
:
""
},
}
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>startAbility=======================>
"
);
});
```
#### FeatureAbility.acquireDataAbilityHelper(uri: string)
*
接口说明
获取dataAbilityHelper
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
*
返回值
返回dataAbilityHelper
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.exmaple.DataAbility
"
)
```
#### FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>)
*
接口说明
启动一个ability,并在该ability被销毁时返回执行结果(callback形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ---------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 被指定的回调方法 |
-
StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
*
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
*
返回值
返回{@link AbilityResult}
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
startAbilityForResult
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.startabilityforresulttest1.MainAbility
"
,
uri
:
""
},
},
)
```
#### FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter)
*
接口说明
启动一个ability,并在该ability被销毁时返回执行结果(Promise形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 表示被启动的Ability |
-
StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
*
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
*
返回值
返回{@link AbilityResult}
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
startAbilityForResult
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.startabilityforresulttest2.MainAbility
"
,
uri
:
""
,
parameters
:
{
mykey0
:
1111
,
mykey1
:
[
1
,
2
,
3
],
mykey2
:
"
[1, 2, 3]
"
,
mykey3
:
"
xxxxxxxxxxxxxxxxxxxxxx
"
,
mykey4
:
[
1
,
15
],
mykey5
:
[
false
,
true
,
false
],
mykey6
:
[
"
aaaaaa
"
,
"
bbbbb
"
,
"
ccccccccccc
"
],
mykey7
:
true
,
},
},
requestCode
:
2
,
},
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>startAbilityForResult=======================>
"
);
});
```
#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>)
*
接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(callback形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------- | ---- | ------------------- |
| parameter | 只读 | AbilityResult | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
*
AbilityResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------------------------------------ |
| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) |
| want | 只读 | Want | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
*
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
*
返回值
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
terminateSelfWithResult
(
{
resultCode
:
1
,
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.finishwithresulttest1.MainAbility
"
,
uri
:
""
,
parameters
:
{
mykey0
:
2222
,
mykey1
:
[
1
,
2
,
3
],
mykey2
:
"
[1, 2, 3]
"
,
mykey3
:
"
ssssssssssssssssssssssssss
"
,
mykey4
:
[
1
,
15
],
mykey5
:
[
false
,
true
,
false
],
mykey6
:
[
"
qqqqq
"
,
"
wwwwww
"
,
"
aaaaaaaaaaaaaaaaa
"
],
mykey7
:
true
,
}
},
},
);
```
#### FeatureAbility.terminateSelfWithResult(parameter: AbilityResult)
*
接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(Promise形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------- | ---- | ------------------- |
| parameter | 只读 | AbilityResult | 是 | 表示被启动的Ability |
*
AbilityResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------------------------------------ |
| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) |
| want | 只读 | Want | 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
*
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
*
返回值
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
terminateSelfWithResult
(
{
resultCode
:
1
,
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.finishwithresulttest1.MainAbility
"
,
uri
:
""
,
parameters
:
{
mykey0
:
2222
,
mykey1
:
[
1
,
2
,
3
],
mykey2
:
"
[1, 2, 3]
"
,
mykey3
:
"
ssssssssssssssssssssssssss
"
,
mykey4
:
[
1
,
15
],
mykey5
:
[
false
,
true
,
false
],
mykey6
:
[
"
qqqqq
"
,
"
wwwwww
"
,
"
aaaaaaaaaaaaaaaaa
"
],
mykey7
:
true
,
}
},
}
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>terminateSelfWithResult=======================>
"
);
});
```
#### FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>)
*
接口说明
检查ability的主窗口是否具有窗口焦点(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback
\<
boolean> | 是 | 被指定的回调方法 |
*
返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
hasWindowFocus
()
```
#### FeatureAbility.hasWindowFocus()
*
接口说明
检查ability的主窗口是否具有窗口焦点(Promise形式)
*
参数描述
Null
*
返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
hasWindowFocus
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>hasWindowFocus=======================>
"
);
});
```
#### FeatureAbility.getWant(callback: AsyncCallback\<Want>)
*
接口说明
获取从ability发送的want(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback
\<
Want> | 是 | 被指定的回调方法 |
*
返回值
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
getWant
()
```
#### FeatureAbility.getWant()
*
接口说明
获取从ability发送的want(Promise形式)
*
参数描述
Null
*
返回值
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
getWant
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getWantCallBack=======================>
"
);
});
```
#### FeatureAbility.getContext()
*
接口说明
获取应用程序上下文
*
返回值
返回应用程序上下文
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
var
context
=
featureAbility
.
getContext
()
context
.
getBundleName
()
```
#### FeatureAbility.terminateSelf(callback: AsyncCallback\<void>)
*
接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
*
返回值
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
terminateSelf
()
```
#### FeatureAbility.terminateSelf()
*
接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(Promise形式)
*
参数描述
Null
*
返回值
*
void
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
terminateSelf
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>terminateSelfCallBack=======================>
"
);
});
```
#### FeatureAbility.connectAbility(*request*: Want, *options*:ConnectOptions): number
*
接口说明
将当前ability连接到指定ServiceAbility(callback形式)
*
connectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------- | -------- | -------------- | ---- | -------------------------- |
| request | 只读 | Want | 是 | 表示被连接的ServiceAbility |
| options | 只读 | ConnectOptions | 是 | 被指定的回调方法 |
*
Want参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| deviceId | 只读 | string | 否 | 表示被连接的ServiceAbility的设备id,缺省表示连接本地的ServiceAbility |
| bundleName | 只读 | string | 是 | 表示被连接的ServiceAbility的包名 |
| abilityName | 只读 | string | 是 | 表示被连接的ServiceAbility的类名 |
-
ConnectOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| onConnect | 只读 | function | 是 | 连接成功时的回调函数 |
| onDisconnect | 只读 | function | 是 | 连接失败时的回调函数 |
| onFailed | 只读 | function | 是 | ConnectAbility调用失败时的回调函数 |
*
返回值
连接的ServiceAbilityID。
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
mRemote
;
var
connId
;
function
onConnectCallback
(
element
,
remote
){
mRemote
=
remote
;
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
featureAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
featureAbility
.
connectAbility
(
{
deviceId
:
deviceId
,
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
```
#### FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback<void>): void
*
接口说明
断开与指定ServiceAbility的连接(callback形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
*
返回值
无
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
mRemote
;
var
connId
;
function
onConnectCallback
(
element
,
remote
){
mRemote
=
remote
;
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
featureAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
featureAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
featureAbility
.
disconnectAbility
(
connId
,
(
error
,
data
)
=>
{
console
.
log
(
'
featureAbilityTest DisConnectJsSameBundleName result errCode :
'
+
error
.
code
+
"
data:
"
+
data
)
},
);
```
#### FeatureAbility.disconnectAbility(connection: number): Promise<void>;
*
接口说明
断开与指定ServiceAbility的连接(promise形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
*
返回值
无
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
var
mRemote
;
var
connId
;
function
onConnectCallback
(
element
,
remote
){
mRemote
=
remote
;
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
featureAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
featureAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
await
featureAbility
.
disconnectAbility
(
connId
);
```
#### FeatureAbility.continueAbility(options: ContinueAbilityOptions, callback: AsyncCallback<void>);
*
接口说明
迁移一个ability到目标设备,并返回执行结果(callback形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ---------------------- | ---- | ------------------- |
| options | 只读 | ContinueAbilityOptions | 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
-
ContinueAbilityOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------- | ---- | ----------------------------------------------------------- |
| deviceId | 只读 | string | 是 | 表示需要包含有关目标启动能力的信息 |
| reversible | 只读 | boolean | 是 | 是否支持回迁的标志,目前不支持该功能,为保留字段,可填false |
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
async
StartContinueAbility
(
deviceId
)
{
let
continueAbilityOptions
=
{
reversible
:
false
,
deviceId
:
deviceId
,
}
function
ContinueAbilityCallback
(
err
,
data
)
{
console
.
info
(
"
[Demo] ContinueAbilityCallback, result err =
"
+
JSON
.
stringify
(
err
));
console
.
info
(
"
[Demo] ContinueAbilityCallback, result data=
"
+
JSON
.
stringify
(
data
));
}
await
featureAbility
.
continueAbility
(
continueAbilityOptions
,
ContinueAbilityCallback
);
console
.
info
(
'
[Demo] featureAbility.StartContinueAbility end
'
);
}
this
.
StartContinueAbility
(
remoteDeviceId
);
//remoteDeviceId is acquired from DeviceManager
```
# FeatureAbility模块
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback
\<
number>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbility(parameter: StartAbilityParameter): Promise
\<
number> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback
\<
AbilityResult>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter): Promise
\<
AbilityResult> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback
\<
void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelfWithResult(parameter: AbilityResult): Promise
\<
void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus(callback: AsyncCallback
\<
boolean>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.hasWindowFocus(): Promise
\<
boolean> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant(callback: AsyncCallback
\<
Want>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getWant(): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.getContext(): Context | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf(callback: AsyncCallback
\<
void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.terminateSelf(): Promise
\<
void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.connectAbility(request: Want, options:ConnectOptions): number | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback
\<
void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| FeatureAbility.disconnectAbility(connection: number): Promise
\<
void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
## 使用限制
FeatureAbility模块的接口只能在Page类型的Ability调用
## 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
```
## FeatureAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<number>): void
*
接口说明
启动新的ability(callback形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ------------------- |
| parameter | 只读 |
[
StartAbilityParameter
](
#StartAbilityParameter类型说明
)
| 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback
\<
number> | 是 | 被指定的回调方法 |
-
返回值
-
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
startAbility
(
{
want
:
{
action
:
""
,
entities
:
[
""
],
type
:
""
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.startability
"
,
abilityName
:
"
com.example.startability.MainAbility
"
,
uri
:
""
},
},
);
)
```
## FeatureAbility.startAbility(parameter: StartAbilityParameter): Promise\<number>
*
接口说明
启动新的ability(Promise形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- |
| parameter | 只读 |
[
StartAbilityParameter
](
#StartAbilityParameter类型说明
)
| 是 | 表示被启动的Ability |
-
返回值
-
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
startAbility
(
{
want
:
{
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
deviceId
,
bundleName
:
"
com.example.startability
"
,
abilityName
:
"
com.example.startability.MainAbility
"
,
uri
:
""
},
}
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>startAbility=======================>
"
);
});
```
## FeatureAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper
*
接口说明
获取dataAbilityHelper
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
*
返回值
| 类型 | 说明 |
| ----------------- | ------------------------------------------ |
| DataAbilityHelper | 用来协助其他Ability访问DataAbility的工具类 |
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
acquireDataAbilityHelper
(
"
dataability:///com.exmaple.DataAbility
"
)
```
## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback\<AbilityResult>): void
*
接口说明
启动一个ability,并在该ability被销毁时返回执行结果(callback形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ---------------------- | ---- | ------------------- |
| parameter | 只读 |
[
StartAbilityParameter
](
#StartAbilityParameter类型说明
)
| 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback
\<
[
AbilityResult
](
#AbilityResult类型说明
)
> | 是 | 被指定的回调方法 |
*
返回值
[
AbilityResult
](
#AbilityResult类型说明
)
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
startAbilityForResult
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.featureabilitytest.MainAbility
"
,
uri
:
""
},
},
)
```
## FeatureAbility.startAbilityForResult(parameter: StartAbilityParameter): Promise\<AbilityResult>
*
接口说明
启动一个ability,并在该ability被销毁时返回执行结果(Promise形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ------------------- |
| parameter | 只读 |
[
StartAbilityParameter
](
#StartAbilityParameter类型说明
)
| 是 | 表示被启动的Ability |
*
返回值
[
AbilityResult
](
#AbilityResult类型说明
)
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
startAbilityForResult
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.featureabilitytest.MainAbility
"
,
uri
:
""
,
parameters
:
{
mykey0
:
1111
,
mykey1
:
[
1
,
2
,
3
],
mykey2
:
"
[1, 2, 3]
"
,
mykey3
:
"
xxxxxxxxxxxxxxxxxxxxxx
"
,
mykey4
:
[
1
,
15
],
mykey5
:
[
false
,
true
,
false
],
mykey6
:
[
"
aaaaaa
"
,
"
bbbbb
"
,
"
ccccccccccc
"
],
mykey7
:
true
,
},
},
requestCode
:
2
,
},
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>startAbilityForResult=======================>
"
);
});
```
## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback\<void>): void
*
接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(callback形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------- | ---- | ------------------- |
| parameter | 只读 |
[
AbilityResult
](
#AbilityResult类型说明
)
| 是 | 表示被启动的Ability |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
featureAbility
.
terminateSelfWithResult
(
{
resultCode
:
1
,
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.featureabilitytest.MainAbility
"
,
uri
:
""
,
parameters
:
{
mykey0
:
2222
,
mykey1
:
[
1
,
2
,
3
],
mykey2
:
"
[1, 2, 3]
"
,
mykey3
:
"
ssssssssssssssssssssssssss
"
,
mykey4
:
[
1
,
15
],
mykey5
:
[
false
,
true
,
false
],
mykey6
:
[
"
qqqqq
"
,
"
wwwwww
"
,
"
aaaaaaaaaaaaaaaaa
"
],
mykey7
:
true
,
}
},
},
);
```
## FeatureAbility.terminateSelfWithResult(parameter: AbilityResult): Promise\<void>
*
接口说明
设置此page ability将返回给调用者的结果代码和数据并破坏此page ability(Promise形式)
*
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------------------------- | ---- | ------------------- |
| parameter | 只读 |
[
AbilityResult
](
#AbilityResult类型说明
)
| 是 | 表示被启动的Ability |
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
terminateSelfWithResult
(
{
resultCode
:
1
,
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
,
deviceId
:
""
,
bundleName
:
"
com.example.featureabilitytest
"
,
abilityName
:
"
com.example.featureabilitytest.MainAbility
"
,
uri
:
""
,
parameters
:
{
mykey0
:
2222
,
mykey1
:
[
1
,
2
,
3
],
mykey2
:
"
[1, 2, 3]
"
,
mykey3
:
"
ssssssssssssssssssssssssss
"
,
mykey4
:
[
1
,
15
],
mykey5
:
[
false
,
true
,
false
],
mykey6
:
[
"
qqqqq
"
,
"
wwwwww
"
,
"
aaaaaaaaaaaaaaaaa
"
],
mykey7
:
true
,
}
},
}
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>terminateSelfWithResult=======================>
"
);
});
```
## FeatureAbility.hasWindowFocus(callback: AsyncCallback\<boolean>): void
*
接口说明
检查ability的主窗口是否具有窗口焦点(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ----------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback
\<
boolean> | 是 | 被指定的回调方法 |
*
返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
hasWindowFocus
()
```
## FeatureAbility.hasWindowFocus(): Promise\<boolean>
*
接口说明
检查ability的主窗口是否具有窗口焦点(Promise形式)
*
参数描述
无
*
返回值
如果此异能当前具有视窗焦点,则返回{@code true};否则返回{@code false}
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
hasWindowFocus
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>hasWindowFocus=======================>
"
);
});
```
## FeatureAbility.getWant(callback: AsyncCallback\<Want>)
*
接口说明
获取从ability发送的want(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback
\<
Want> | 是 | 被指定的回调方法 |
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
getWant
()
```
## FeatureAbility.getWant(): void
*
接口说明
获取从ability发送的want(Promise形式)
*
参数描述
无
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
getWant
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>getWantCallBack=======================>
"
);
});
```
## FeatureAbility.getContext(): Context
*
接口说明
获取应用程序上下文
*
返回值
返回应用程序上下文
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
var
context
=
featureAbility
.
getContext
()
context
.
getBundleName
()
```
## FeatureAbility.terminateSelf(callback: AsyncCallback\<void>): void
*
接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(callback形式)
*
参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | ---------------- |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
terminateSelf
()
```
## FeatureAbility.terminateSelf(): Promise\<void>
*
接口说明
设置page ability返回给被调用方的结果代码和数据,并销毁此page ability(Promise形式)
*
参数描述
Null
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureability
'
;
featureAbility
.
terminateSelf
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>terminateSelfCallBack=======================>
"
);
});
```
## FeatureAbility.connectAbility(request: Want, options:ConnectOptions): number
*
接口说明
将当前ability连接到指定ServiceAbility(callback形式)
*
connectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------- | -------- | -------------- | ---- | -------------------------- |
| request | 只读 | Want | 是 | 表示被连接的ServiceAbility |
| options | 只读 | ConnectOptions | 是 | 被指定的回调方法 |
-
ConnectOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| onConnect | 只读 | function | 是 | 连接成功时的回调函数 |
| onDisconnect | 只读 | function | 是 | 连接失败时的回调函数 |
| onFailed | 只读 | function | 是 | ConnectAbility调用失败时的回调函数 |
*
返回值
连接的ServiceAbilityID。
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
function
onConnectCallback
(
element
,
remote
){
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
featureAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
featureAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
```
## FeatureAbility.disconnectAbility(connection: number, callback:AsyncCallback\<void>): void
*
接口说明
断开与指定ServiceAbility的连接(callback形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
function
onConnectCallback
(
element
,
remote
){
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
featureAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
featureAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
featureAbility
.
disconnectAbility
(
connId
,
(
error
,
data
)
=>
{
console
.
log
(
'
featureAbilityTest DisConnectJsSameBundleName result errCode :
'
+
error
.
code
+
"
data:
"
+
data
)
},
);
```
## FeatureAbility.disconnectAbility(connection: number): Promise\<void>
*
接口说明
断开与指定ServiceAbility的连接(promise形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
*
返回值
*
示例
```
javascript
import
featureAbility
from
'
@ohos.ability.featureAbility
'
function
onConnectCallback
(
element
,
remote
){
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
featureAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
featureAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
await
featureAbility
.
disconnectAbility
(
connId
);
```
## AbilityResult类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | --------------------- | ---- | ------------------------------------------------------------ |
| resultCode | 只读 | number | 是 | 指示销毁该能力后返回的结果代码。您可以定义结果代码来识别错误(暂不支持) |
| want | 只读 |
[
Want
](
#Want类型说明
)
| 否 | 指示销毁该能力后返回的数据。您可以定义返回的数据。此参数可以为null。 |
## StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | --------------------- | ---- | ------------------------------------------------------------ |
| want | 只读 |
[
Want
](
#Want类型说明
)
| 是 | 表示需要包含有关目标启动能力的信息。 |
| abilityStartSetting | 只读 | {[key: string]: any} | 否 | 表示能力的特殊属性,当开发者启动能力时,该属性可以作为调用中的输入参数传递。 |
## Want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------------- | ---- | ------------------------------------------------------------ |
| deviceId | 只读 | string | 否 | 表示运行指定Ability的设备ID。 |
| bundleName | 只读 | string | 否 | 表示包描述。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| abilityName | 只读 | string | 否 | 表示待启动的Ability名称。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| uri | 只读 | string | 否 | 表示Uri描述。如果在Want中指定了Uri,则Want将匹配指定的Uri信息,包括scheme, schemeSpecificPart, authority和path信息。 |
| type | 只读 | string | 否 | 表示MIME type类型描述,比如:"text/plain" 、 "image/
*
"等。 |
| flags | 只读 | number | 否 | 表示处理Want的方式。默认传数字,具体参考:
[
flags说明
](
#flags说明
)
。 |
| action | 只读 | string | 否 | 表示action选项描述。 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示WantParams描述。 |
| entities | 只读 | Array
\<
string> | 否 | 表示entities相关描述。 |
## flags说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源能力 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示迁移是可拉回的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,使用后台模式安装该功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Want}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
## AbilityStartSetting类型说明
abilityStartSetting属性是一个定义为[key: string]: any的对象,key对应设定类型为:AbilityStartSetting枚举类型,value对应设定类型为:AbilityWindowConfiguration枚举类型。
使用时通过featureAbility.AbilityStartSetting获取,示例:featureAbility.AbilityStartSetting.BOUNDS_KEY。
| 名称 | 参数 | 描述 |
| --------------- | --------------- | -------------------------- |
| BOUNDS_KEY | "abilityBounds" | 窗口显示大小属性的名称。 |
| WINDOW_MODE_KEY | "windowMode" | 窗口显示模式属性的名称。 |
| DISPLAY_ID_KEY | "displayId" | 窗口显示设备ID属性的名称。 |
## AbilityWindowConfiguration类型说明
使用时通过featureAbility.AbilityWindowConfiguration获取,示例:featureAbility.AbilityWindowConfiguration.WINDOW_MODE_UNDEFINED。
| 名称 | 参数 | 描述 |
| --------------------------- | ---- | ---------- |
| WINDOW_MODE_UNDEFINED | 0 | 未定义。 |
| WINDOW_MODE_FULLSCREEN | 1 | 全屏。 |
| WINDOW_MODE_SPLIT_PRIMARY | 100 | 分屏主屏。 |
| WINDOW_MODE_SPLIT_SECONDARY | 101 | 分屏次屏。 |
| WINDOW_MODE_FLOATING | 102 | 悬浮窗。 |
\ No newline at end of file
zh-cn/application-dev/reference/apis/js-apis-notification.md
浏览文件 @
ba3112c1
# Notification模块
(JS端SDK接口)
# Notification模块
##
##
支持设备
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- |
...
...
@@ -83,19 +83,19 @@
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback
\<
boolean
\>
) | 支持 | 支持 | 支持 | 支持 |
| WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise
\<
boolean
\>
| 支持 | 支持 | 支持 | 支持 |
##
##
权限列表
## 权限列表
无
##
##
通知接口
## 通知接口
##
##
导入模块
## 导入模块
```
js
import
notify
from
'
@ohos.notification
'
;
import
Notification
from
'
@ohos.notification
'
;
```
##
##
Notification.publish(request: NotificationRequest, callback: AsyncCallback\<void\>)
## Notification.publish(request: NotificationRequest, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -144,12 +144,13 @@ import notify from '@ohos.notification';
NotificationContent类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ---------------------------- | ---- | -------------- |
| contentType | 读、写 | ContentType | 是 | 通知内容类型 |
| normal | 读、写 | NotificationBasicContent | 否 | 通知基本内容 |
| longText | 读、写 | NotificationLongTextContent | 否 | 通知长文本内容 |
| multiLine | 读、写 | NotificationMultiLineContent | 否 | 通知多行内容 |
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ---------------------------- | ---- | ------------------ |
| contentType | 读、写 | ContentType | 是 | 通知内容类型 |
| normal | 读、写 | NotificationBasicContent | 否 | 基本类型通知内容 |
| longText | 读、写 | NotificationLongTextContent | 否 | 长文本类型通知内容 |
| multiLine | 读、写 | NotificationMultiLineContent | 否 | 多行类型通知内容 |
| picture | 读、写 | NotificationPictureContent | 否 | 图片类型通知内容 |
-
ContentType类型说明
...
...
@@ -202,6 +203,15 @@ NotificationContent类型说明
| expandedTitle | 读、写 | string | 是 | 通知展开时的标题 |
| picture | 读、写 | image.PixelMap | 是 | 通知的图片内容 |
-
SlotType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------------- | -------- | -------- | ---- | -------- |
| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 |
| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 |
| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 |
| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 |
-
NotificationActionButton类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
...
...
@@ -247,7 +257,7 @@ Notification.publish(notificationRequest, publishCallback)
##
##
Notification.publish(request: NotificationRequest)
## Notification.publish(request: NotificationRequest)
-
接口说明
...
...
@@ -280,7 +290,7 @@ Notification.publish(notificationRequest).then((void) => {
##
##
Notification.cancel(id: number, label: string, callback: AsyncCallback\<void\>)
## Notification.cancel(id: number, label: string, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -291,7 +301,7 @@ Notification.publish(notificationRequest).then((void) => {
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| id | 只读 | number | 是 | 通知ID |
| lab
le
| 只读 | string | 是 | 通知标签 |
| lab
el
| 只读 | string | 是 | 通知标签 |
| callback | 只读 | AsyncCallback
\<
void
\>
| 是 | 表示被指定的回调方法 |
-
返回值
...
...
@@ -310,7 +320,7 @@ Notification.cancel(0, "label", cancelCallback)
##
##
Notification.cancel(id:number, label?:string)
## Notification.cancel(id:number, label?:string)
-
接口说明
...
...
@@ -321,7 +331,7 @@ Notification.cancel(0, "label", cancelCallback)
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------ | ---- | -------- |
| id | 只读 | number | 是 | 通知ID |
| lab
le | 只读 | string | 是
| 通知标签 |
| lab
el | 只读 | string | 否
| 通知标签 |
-
返回值
...
...
@@ -337,7 +347,7 @@ Notification.cancel(0).then((void) => {
##
##
Notification.cancel(id: number, callback: AsyncCallback\<void\>)
## Notification.cancel(id: number, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -366,7 +376,7 @@ Notification.cancel(0, cancelCallback)
##
##
Notification.cancelAll(callback: AsyncCallback\<void\>)
## Notification.cancelAll(callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -394,11 +404,11 @@ Notification.cancelAll(cancelCallback)
##
##
Notification.cancelAll()
## Notification.cancelAll()
-
接口说明
取消所有已发布的通知(
callback
形式)
取消所有已发布的通知(
Promise
形式)
-
参数描述
...
...
@@ -406,7 +416,7 @@ Notification.cancelAll(cancelCallback)
-
返回值
void
Promise
\<
void
\>
-
示例
...
...
@@ -418,7 +428,7 @@ Notification.cancelAll().then((void) => {
##
##
Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\<void\>)
## Notification.addSlot(slot: NotificationSlot, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -426,10 +436,10 @@ Notification.cancelAll().then((void) => {
-
addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述
|
| -------- | -------- | --------------------- | ---- | --------------------
----------------------
|
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道
,由{NotificationSlot}设置
|
| callback | 只读 | AsyncCallback
\<
void
\>
| 是 | 表示被指定的回调方法
|
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | --------------------- | ---- | -------------------- |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道
对象
|
| callback | 只读 | AsyncCallback
\<
void
\>
| 是 | 表示被指定的回调方法 |
-
NotificationSlot类型说明
...
...
@@ -460,14 +470,14 @@ function addSlotCallBack(err) {
}
//通知slot对象
var
notificationSlot
=
{
type
:
SOCIAL_COMMUNICATION
type
:
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
}
Notification
.
addSlot
(
notificationSlot
,
addSlotCallBack
)
```
##
##
Notification.addSlot(slot: NotificationSlot)
## Notification.addSlot(slot: NotificationSlot)
-
接口说明
...
...
@@ -475,9 +485,9 @@ Notification.addSlot(notificationSlot, addSlotCallBack)
-
addSlot参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述
|
| ---- | -------- | ---------------- | ---- | --------------------
----------------------
|
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道
,由{NotificationSlot}设置
|
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---- | -------- | ---------------- | ---- | -------------------- |
| slot | 只读 | NotificationSlot | 是 | 要创建的通知通道
对象
|
-
返回值
...
...
@@ -487,10 +497,9 @@ Notification.addSlot(notificationSlot, addSlotCallBack)
```
js
//通知slot对象
var
notificationSlot
=
{
notificationId
:
0
,
type
:
SOCIAL_COMMUNICATION
}
var
notificationSlot
=
{
type
:
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
}
Notification
.
addSlot
(
notificationSlot
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>addSlotCallback=======================>
"
);
});
...
...
@@ -498,7 +507,7 @@ Notification.addSlot(notificationSlot).then((void) => {
##
##
Notification.addSlot(type: SlotType, callback: AsyncCallback\<void\>)
## Notification.addSlot(type: SlotType, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -511,15 +520,6 @@ Notification.addSlot(notificationSlot).then((void) => {
| type | 只读 | SlotType | 是 | 要创建的通知通道的类型 |
| callback | 只读 | AsyncCallback
\<
void
\>
| 是 | 表示被指定的回调方法 |
-
SlotType类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------------- | -------- | -------- | ---- | -------- |
| SOCIAL_COMMUNICATION | 只读 | SlotType | 否 | 社交类型 |
| SERVICE_INFORMATION | 只读 | SlotType | 否 | 服务类型 |
| CONTENT_INFORMATION | 只读 | SlotType | 否 | 内容类型 |
| OTHER_TYPES | 只读 | SlotType | 否 | 其他类型 |
-
返回值
void
...
...
@@ -531,12 +531,12 @@ Notification.addSlot(notificationSlot).then((void) => {
function
addSlotCallBack
(
err
)
{
console
.
info
(
"
==========================>addSlotCallBack=======================>
"
);
}
Notification
.
addSlot
(
SOCIAL_COMMUNICATION
,
addSlotCallBack
)
Notification
.
addSlot
(
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
,
addSlotCallBack
)
```
##
##
Notification.addSlot(type: SlotType)
## Notification.addSlot(type: SlotType)
-
接口说明
...
...
@@ -555,14 +555,14 @@ Notification.addSlot(SOCIAL_COMMUNICATION, addSlotCallBack)
-
示例
```
js
Notification
.
addSlot
(
SOCIAL_COMMUNICATION
).
then
((
void
)
=>
{
Notification
.
addSlot
(
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>addSlotCallback=======================>
"
);
});
```
##
##
Notification.addSlots(slots: Array\<NotificationSlot\>, callback: AsyncCallback\<void\>)
## Notification.addSlots(slots: Array\<NotificationSlot\>, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -570,10 +570,10 @@ Notification.addSlot(SOCIAL_COMMUNICATION).then((void) => {
-
addSlots数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述
|
| -------- | -------- | ------------------------- | ---- | ------------------------
------------------
|
| slots | 只读 | Array
\<
NotificationSlot
\>
| 是 | 要创建的通知通道
,由{NotificationSlot}设置
|
| callback | 只读 | AsyncCallback
\<
void
\>
| 是 | 表示被指定的回调方法
|
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | ------------------------- | ---- | ------------------------ |
| slots | 只读 | Array
\<
NotificationSlot
\>
| 是 | 要创建的通知通道
对象数组
|
| callback | 只读 | AsyncCallback
\<
void
\>
| 是 | 表示被指定的回调方法 |
-
返回值
...
...
@@ -588,8 +588,7 @@ function addSlotsCallBack(err) {
}
//通知slot对象
var
notificationSlot
=
{
notificationId
:
0
,
type
:
SOCIAL_COMMUNICATION
type
:
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
}
//通知slot array 对象
var
notificationSlotArray
=
new
Array
();
...
...
@@ -600,7 +599,7 @@ Notification.addSlots(notificationSlotArray, addSlotsCallBack)
##
##
Notification.addSlots(slots: Array\<NotificationSlot\>)
## Notification.addSlots(slots: Array\<NotificationSlot\>)
-
接口说明
...
...
@@ -608,9 +607,9 @@ Notification.addSlots(notificationSlotArray, addSlotsCallBack)
-
addSlots数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述
|
| ----- | -------- | ------------------------- | ---- | ------------------------
------------------
|
| slots | 只读 | Array
\<
NotificationSlot
\>
| 是 | 要创建的通知通道
,由{NotificationSlot}设置
|
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----- | -------- | ------------------------- | ---- | ------------------------ |
| slots | 只读 | Array
\<
NotificationSlot
\>
| 是 | 要创建的通知通道
对象数组
|
-
返回值
...
...
@@ -621,8 +620,7 @@ Notification.addSlots(notificationSlotArray, addSlotsCallBack)
```
js
//通知slot对象
var
notificationSlot
=
{
notificationId
:
0
,
type
:
SOCIAL_COMMUNICATION
type
:
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
}
//通知slot array 对象
var
notificationSlotArray
=
new
Array
();
...
...
@@ -635,7 +633,7 @@ Notification.addSlots(notificationSlotArray).then((void) => {
##
##
Notification.getSlot(slotType: SlotType, callback: AsyncCallback\<NotificationSlot\>)
## Notification.getSlot(slotType: SlotType, callback: AsyncCallback\<NotificationSlot\>)
-
接口说明
...
...
@@ -659,13 +657,13 @@ Notification.addSlots(notificationSlotArray).then((void) => {
function
getSlotCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getSlotCallback=======================>
"
);
}
var
slotType
=
SOCIAL_COMMUNICATION
;
var
slotType
=
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
;
Notification
.
getSlot
(
slotType
,
getSlotCallback
)
```
##
##
Notification.getSlot(slotType)
## Notification.getSlot(slotType)
-
接口说明
...
...
@@ -684,14 +682,15 @@ Notification.getSlot(slotType, getSlotCallback)
-
示例
```
js
var
slotType
=
SOCIAL_COMMUNICATION
;
var
slotType
=
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
;
Notification
.
getSlot
(
slotType
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getSlotCallback=======================>
"
);
});
```
##
##
Notification.getSlots(callback: AsyncCallback<Array\<NotificationSlot\>>)
## Notification.getSlots(callback: AsyncCallback<Array\<NotificationSlot\>>)
-
接口说明
...
...
@@ -719,7 +718,7 @@ Notification.getSlots(getSlotsCallback)
##
##
Notification.getSlots()
## Notification.getSlots()
-
接口说明
...
...
@@ -738,11 +737,12 @@ Notification.getSlots(getSlotsCallback)
```
js
Notification
.
getSlots
().
then
((
data
)
=>
{
console
.
info
(
"
==========================>getSlotsCallback=======================>
"
);
});
```
##
##
Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\<void\>)
## Notification.removeSlot(slotType: SlotType, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -766,13 +766,13 @@ Notification.getSlots().then((data) => {
function
removeSlotCallback
(
err
)
{
console
.
info
(
"
==========================>removeSlotCallback=======================>
"
);
}
var
slotType
=
SOCIAL_COMMUNICATION
;
var
slotType
=
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
;
Notification
.
removeSlot
(
slotType
,
removeSlotCallback
)
```
##
##
Notification.removeSlot(slotType: SlotType)
## Notification.removeSlot(slotType: SlotType)
-
接口说明
...
...
@@ -791,14 +791,15 @@ Notification.removeSlot(slotType,removeSlotCallback)
-
示例
```
js
var
slotType
=
SOCIAL_COMMUNICATION
;
var
slotType
=
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
;
Notification
.
removeSlot
(
slotType
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>removeSlotCallback=======================>
"
);
});
```
##
##
Notification.removeAllSlots(callback: AsyncCallback\<void\>)
## Notification.removeAllSlots(callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -825,7 +826,7 @@ Notification.removeAllSlots(removeAllCallBack)
##
##
Notification.removeAllSlots()
## Notification.removeAllSlots()
-
接口说明
...
...
@@ -849,7 +850,7 @@ Notification.removeAllSlots().then((void) => {
##
##
Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\<void\>)
## Notification.subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -873,7 +874,6 @@ Notification.removeAllSlots().then((void) => {
| onConnect?:() | 读、写 | function | 否 | 注册订阅回调函数 |
| onDisconnect?:() | 读、写 | function | 否 | 取消订阅回调函数 |
| onDestroy?:() | 读、写 | function | 否 | 服务失联回调函数 |
| onDisturbModeChange?:(mode: notification.DoNotDisturbMode) | 读、写 | function | 否 | 免打扰模式变更回调函数 |
| onDoNotDisturbDateChange?:(mode: notification.DoNotDisturbDate) | 读、写 | function | 否 | 免打扰时间选项变更回调函数 |
-
SubscribeCallbackData 类型说明
...
...
@@ -901,15 +901,6 @@ Notification.removeAllSlots().then((void) => {
| hashCode | 只读 | string | 是 | 通知唯一标识 |
| ranking | 只读 | number | 是 | 通知排序序号 |
-
DoNotDisturbMode类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------------- | -------- | ---------------- | ---- | ---------------------------- |
| ALLOW_ALL | 只读 | DoNotDisturbMode | 否 | 全部绕过免打扰 |
| ALLOW_PRIORITY | 只读 | DoNotDisturbMode | 否 | 指定优先级通知可以绕过免打扰 |
| ALLOW_NONE | 只读 | DoNotDisturbMode | 否 | 全部免打扰 |
| ALLOW_ALARMS | 只读 | DoNotDisturbMode | 否 | 闹钟类型通知可以绕过免打扰 |
-
DoNotDisturbType类型说明
...
...
@@ -950,17 +941,17 @@ function onConsumeCallback(err, data) {
console
.
info
(
"
==========================>onConsumeCallback=======================>
"
);
}
var
subscriber
=
{
onConsume
:
onConsumeCallback
;
onConsume
:
onConsumeCallback
}
var
info
=
{
bundleNames
:[
"
bundleName1
"
,
"
bundleName2
"
]
bundleNames
:
[
"
bundleName1
"
,
"
bundleName2
"
]
}
Notification
.
subscribe
(
subscriber
,
info
,
subscribeCallback
);
```
##
##
Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
## Notification.subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -987,14 +978,14 @@ function onConsumeCallback(err, data) {
console
.
info
(
"
==========================>onConsumeCallback=======================>
"
);
}
var
subscriber
=
{
onConsume
:
onConsumeCallback
;
onConsume
:
onConsumeCallback
}
Notification
.
subscribe
(
subscriber
,
subscribeCallback
);
```
##
##
Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo)
## Notification.subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo)
-
接口说明
...
...
@@ -1018,7 +1009,7 @@ function onConsumeCallback(err, data) {
console
.
info
(
"
==========================>onConsumeCallback=======================>
"
);
}
var
subscriber
=
{
onConsume
:
onConsumeCallback
;
onConsume
:
onConsumeCallback
};
Notification
.
subscribe
(
subscriber
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>subscribeCallback=======================>
"
);
...
...
@@ -1027,7 +1018,7 @@ Notification.subscribe(subscriber).then((void) => {
##
##
Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
## Notification.unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1054,14 +1045,14 @@ function onConsumeCallback(err, data) {
console
.
info
(
"
==========================>onConsumeCallback=======================>
"
);
}
var
subscriber
=
{
onConsume
:
onConsumeCallback
;
onConsume
:
onConsumeCallback
}
Notification
.
unsubscribe
(
subscriber
,
unsubscribeCallback
);
```
##
##
Notification.unsubscribe(subscriber: NotificationSubscriber)
## Notification.unsubscribe(subscriber: NotificationSubscriber)
-
接口说明
...
...
@@ -1084,7 +1075,7 @@ function onConsumeCallback(err, data) {
console
.
info
(
"
==========================>onConsumeCallback=======================>
"
);
}
var
subscriber
=
{
onConsume
:
onConsumeCallback
;
onConsume
:
onConsumeCallback
};
Notification
.
unsubscribe
(
subscriber
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>unsubscribeCallback=======================>
"
);
...
...
@@ -1093,7 +1084,7 @@ Notification.unsubscribe(subscriber).then((void) => {
##
##
Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
## Notification.enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1124,14 +1115,14 @@ function enableNotificationCallback(err) {
console
.
info
(
"
==========================>enableNotificationCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
enableNotification
(
bundle
,
false
,
enableNotificationCallback
);
```
##
##
Notification.enableNotification(bundle: BundleOption, enable: boolean)
## Notification.enableNotification(bundle: BundleOption, enable: boolean)
-
接口说明
...
...
@@ -1152,7 +1143,7 @@ Notification.enableNotification(bundle, false, enableNotificationCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
enableNotification
(
bundle
,
false
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>enableNotificationCallback=======================>
"
);
...
...
@@ -1161,7 +1152,7 @@ Notification.enableNotification(bundle, false).then((void) => {
##
##
Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
## Notification.isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
-
接口说明
...
...
@@ -1185,14 +1176,14 @@ function isNotificationEnabledCallback(err, data) {
console
.
info
(
"
==========================>isNotificationEnabledCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
isNotificationEnabled
(
bundle
,
isNotificationEnabledCallback
);
```
##
##
Notification.isNotificationEnabled(bundle: BundleOption)
## Notification.isNotificationEnabled(bundle: BundleOption)
-
接口说明
...
...
@@ -1212,7 +1203,7 @@ Notification.isNotificationEnabled(bundle, isNotificationEnabledCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
isNotificationEnabled
(
bundle
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>isNotificationEnabledCallback=======================>
"
);
...
...
@@ -1221,7 +1212,7 @@ Notification.isNotificationEnabled(bundle).then((data) => {
##
##
Notification.isNotificationEnabled(callback: AsyncCallback\<boolean\>)
## Notification.isNotificationEnabled(callback: AsyncCallback\<boolean\>)
-
接口说明
...
...
@@ -1249,7 +1240,7 @@ Notification.isNotificationEnabled(isNotificationEnabledCallback);
##
##
Notification.isNotificationEnabled()
## Notification.isNotificationEnabled()
-
接口说明
...
...
@@ -1275,7 +1266,7 @@ Notification.isNotificationEnabled().then((data) => {
##
##
Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
## Notification.displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1300,14 +1291,14 @@ function displayBadgeCallback(err) {
console
.
info
(
"
==========================>displayBadgeCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
displayBadge
(
bundle
,
false
,
displayBadgeCallback
);
```
##
##
Notification.displayBadge(bundle: BundleOption, enable: boolean)
## Notification.displayBadge(bundle: BundleOption, enable: boolean)
-
接口说明
...
...
@@ -1328,7 +1319,7 @@ Notification.displayBadge(bundle, false, displayBadgeCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
displayBadge
(
bundle
,
false
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>displayBadgeCallback=======================>
"
);
...
...
@@ -1337,7 +1328,7 @@ Notification.displayBadge(bundle, false).then((void) => {
##
##
Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
## Notification.isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\<boolean\>)
-
接口说明
...
...
@@ -1361,14 +1352,14 @@ function isBadgeDisplayedCallback(err, data) {
console
.
info
(
"
==========================>isBadgeDisplayedCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
isBadgeDisplayed
(
bundle
,
isBadgeDisplayedCallback
);
```
##
##
Notification.isBadgeDisplayed(bundle: BundleOption)
## Notification.isBadgeDisplayed(bundle: BundleOption)
-
接口说明
...
...
@@ -1388,7 +1379,7 @@ Notification.isBadgeDisplayed(bundle, isBadgeDisplayedCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
isBadgeDisplayed
(
bundle
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>isBadgeDisplayedCallback=======================>
"
);
...
...
@@ -1397,7 +1388,7 @@ Notification.isBadgeDisplayed(bundle).then((data) => {
##
##
Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\<void\>)
## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1422,17 +1413,17 @@ function setSlotByBundleCallback(err) {
console
.
info
(
"
==========================>setSlotByBundleCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
var
notificationSlot
=
{
type
:
SOCIAL_COMMUNICATION
type
:
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
}
Notification
.
setSlotByBundle
(
bundle
,
notificationSlot
,
setSlotByBundleCallback
);
```
##
##
Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot)
## Notification.setSlotByBundle(bundle: BundleOption, slot: NotificationSlot)
-
接口说明
...
...
@@ -1453,10 +1444,10 @@ Notification.setSlotByBundle(bundle, notificationSlot, setSlotByBundleCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
var
notificationSlot
=
{
type
:
SOCIAL_COMMUNICATION
type
:
Notification
.
SlotType
.
SOCIAL_COMMUNICATION
}
Notification
.
displayBadge
(
bundle
,
notificationSlot
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>setSlotByBundleCallback=======================>
"
);
...
...
@@ -1465,7 +1456,7 @@ Notification.displayBadge(bundle, notificationSlot).then((void) => {
##
##
Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array\<NotificationSlot\>>)
## Notification.getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array\<NotificationSlot\>>)
-
接口说明
...
...
@@ -1489,14 +1480,14 @@ function getSlotsByBundleCallback(err, data) {
console
.
info
(
"
==========================>getSlotsByBundleCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
getSlotsByBundle
(
bundle
,
getSlotsByBundleCallback
);
```
##
##
Notification.getSlotsByBundle(bundle: BundleOption)
## Notification.getSlotsByBundle(bundle: BundleOption)
-
接口说明
...
...
@@ -1516,7 +1507,7 @@ Notification.getSlotsByBundle(bundle, getSlotsByBundleCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
getSlotsByBundle
(
bundle
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getSlotsByBundleCallback=======================>
"
);
...
...
@@ -1525,7 +1516,7 @@ Notification.getSlotsByBundle(bundle).then((data) => {
##
##
Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\<number\>)
## Notification.getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\<number\>)
-
接口说明
...
...
@@ -1549,14 +1540,14 @@ function getSlotNumByBundle(err, data) {
console
.
info
(
"
==========================>getSlotNumByBundleCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
getSlotNumByBundle
(
bundle
,
getSlotNumByBundleCallback
);
```
##
##
Notification.getSlotNumByBundle(bundle: BundleOption)
## Notification.getSlotNumByBundle(bundle: BundleOption)
-
接口说明
...
...
@@ -1576,7 +1567,7 @@ Notification.getSlotNumByBundle(bundle, getSlotNumByBundleCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
getSlotNumByBundle
(
bundle
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getSlotNumByBundleCallback=======================>
"
);
...
...
@@ -1585,7 +1576,7 @@ Notification.getSlotNumByBundle(bundle).then((data) => {
##
##
Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\<void\>)
## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1617,18 +1608,18 @@ function removeCallback(err) {
console
.
info
(
"
==========================>removeCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
var
notificationKey
=
{
id
:
0
;
label
:
"
label
"
;
id
:
0
;
label
:
"
label
"
;
}
Notification
.
remove
(
bundle
,
notificationKey
,
removeCallback
);
```
##
##
Notification.remove(bundle: BundleOption, notificationKey: NotificationKey)
## Notification.remove(bundle: BundleOption, notificationKey: NotificationKey)
-
接口说明
...
...
@@ -1649,11 +1640,11 @@ Notification.remove(bundle, notificationKey, removeCallback);
```
js
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
var
notificationKey
=
{
id
:
0
;
label
:
"
label
"
;
id
:
0
;
label
:
"
label
"
;
}
Notification
.
remove
(
bundle
,
notificationKey
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>removeCallback=======================>
"
);
...
...
@@ -1662,7 +1653,7 @@ Notification.remove(bundle, notificationKey).then((void) => {
##
##
Notification.remove(hashCode: string, callback: AsyncCallback\<void\>)
## Notification.remove(hashCode: string, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1691,7 +1682,7 @@ Notification.remove(hashCode, removeCallback);
##
##
Notification.remove(hashCode: string)
## Notification.remove(hashCode: string)
-
接口说明
...
...
@@ -1717,7 +1708,7 @@ Notification.remove(hashCode).then((void) => {
##
##
Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\<void\>)
## Notification.removeAll(bundle: BundleOption, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1741,14 +1732,14 @@ function removeAllCallback(err) {
console
.
info
(
"
==========================>removeAllCallback=======================>
"
);
}
var
bundle
=
{
bundle
:
"
bundleName1
"
;
bundle
:
"
bundleName1
"
;
}
Notification
.
removeAll
(
bundle
,
removeAllCallback
);
```
##
##
Notification.removeAll(callback: AsyncCallback\<void\>)
## Notification.removeAll(callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1776,7 +1767,7 @@ Notification.removeAll(removeAllCallback);
##
##
Notification.removeAll(bundle?: BundleOption)
## Notification.removeAll(bundle?: BundleOption)
-
接口说明
...
...
@@ -1802,7 +1793,7 @@ Notification.removeAll().then((void) => {
##
##
Notification.getAllActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
## Notification.getAllActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
-
接口说明
...
...
@@ -1830,7 +1821,7 @@ Notification.getAllActiveNotifications(getAllActiveNotificationsCallback);
##
##
Notification.getAllActiveNotifications()
## Notification.getAllActiveNotifications()
-
接口说明
...
...
@@ -1854,7 +1845,7 @@ Notification.getAllActiveNotifications().then((data) => {
##
##
Notification.getActiveNotificationCount(callback: AsyncCallback\<number\>)
## Notification.getActiveNotificationCount(callback: AsyncCallback\<number\>)
-
接口说明
...
...
@@ -1882,7 +1873,7 @@ Notification.getActiveNotificationCount(getActiveNotificationCountCallback);
##
##
Notification.getActiveNotificationCount()
## Notification.getActiveNotificationCount()
-
接口说明
...
...
@@ -1906,7 +1897,7 @@ Notification.getActiveNotificationCount().then((data) => {
##
##
Notification.getActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
## Notification.getActiveNotifications(callback: AsyncCallback<Array\<NotificationRequest\>>)
-
接口说明
...
...
@@ -1934,7 +1925,7 @@ Notification.getActiveNotifications(getActiveNotificationsCallback);
##
##
Notification.getActiveNotifications()
## Notification.getActiveNotifications()
-
接口说明
...
...
@@ -1958,7 +1949,7 @@ Notification.getActiveNotifications().then((data) => {
##
##
Notification.cancelGroup(groupName: string, callback: AsyncCallback\<void\>)
## Notification.cancelGroup(groupName: string, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -1989,7 +1980,7 @@ Notification.cancelGroup(groupName, cancelGroupCallback);
##
##
Notification.cancelGroup(groupName: string)
## Notification.cancelGroup(groupName: string)
-
接口说明
...
...
@@ -2016,7 +2007,7 @@ Notification.cancelGroup(groupName).then(() => {
##
##
Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\<void\>)
## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -2041,7 +2032,7 @@ function removeGroupByBundleCallback(err) {
console
.
info
(
"
==========================>removeGroupByBundleCallback=======================>
"
);
}
var
bundleOption
=
{
bundle
:
"
Bundle
"
};
var
bundleOption
=
{
bundle
:
"
Bundle
"
};
var
groupName
=
"
GroupName
"
;
Notification
.
removeGroupByBundle
(
bundleOption
,
groupName
,
removeGroupByBundleCallback
);
...
...
@@ -2049,7 +2040,7 @@ Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCal
##
##
Notification.removeGroupByBundle(bundle: BundleOption, groupName: string)
## Notification.removeGroupByBundle(bundle: BundleOption, groupName: string)
-
接口说明
...
...
@@ -2069,7 +2060,7 @@ Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCal
-
示例
```
js
var
bundleOption
=
{
bundle
:
"
Bundle
"
};
var
bundleOption
=
{
bundle
:
"
Bundle
"
};
var
groupName
=
"
GroupName
"
;
Notification
.
removeGroupByBundle
(
bundleOption
,
groupName
).
then
(()
=>
{
console
.
info
(
"
==========================>removeGroupByBundlePromise=======================>
"
);
...
...
@@ -2078,7 +2069,7 @@ Notification.removeGroupByBundle(bundleOption, groupName).then(() => {
##
##
Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\<void\>)
## Notification.setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -2103,9 +2094,9 @@ function setDoNotDisturbDateCallback(err) {
}
var
doNotDisturbDate
=
{
type
:
notification
.
DoNotDisturbType
.
TYPE_ONCE
,
begin
:
new
Date
(),
end
:
new
Date
(
2021
,
11
,
15
,
18
,
0
)
type
:
notification
.
DoNotDisturbType
.
TYPE_ONCE
,
begin
:
new
Date
(),
end
:
new
Date
(
2021
,
11
,
15
,
18
,
0
)
}
Notification
.
setDoNotDisturbDate
(
doNotDisturbDate
,
setDoNotDisturbDateCallback
);
...
...
@@ -2113,7 +2104,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
##
##
Notification.setDoNotDisturbDate(date: DoNotDisturbDate)
## Notification.setDoNotDisturbDate(date: DoNotDisturbDate)
-
接口说明
...
...
@@ -2133,9 +2124,9 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
```
js
var
doNotDisturbDate
=
{
type
:
notification
.
DoNotDisturbType
.
TYPE_ONCE
,
begin
:
new
Date
(),
end
:
new
Date
(
2021
,
11
,
15
,
18
,
0
)
type
:
notification
.
DoNotDisturbType
.
TYPE_ONCE
,
begin
:
new
Date
(),
end
:
new
Date
(
2021
,
11
,
15
,
18
,
0
)
}
Notification
.
setDoNotDisturbDate
(
doNotDisturbDate
).
then
(()
=>
{
console
.
info
(
"
==========================>setDoNotDisturbDatePromise=======================>
"
);
...
...
@@ -2144,7 +2135,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => {
##
##
Notification.getDoNotDisturbDate(callback: AsyncCallback\<DoNotDisturbDate\>)
## Notification.getDoNotDisturbDate(callback: AsyncCallback\<DoNotDisturbDate\>)
-
接口说明
...
...
@@ -2172,7 +2163,7 @@ Notification.getDoNotDisturbDate(getDoNotDisturbDateCallback);
##
##
Notification.getDoNotDisturbDate()
## Notification.getDoNotDisturbDate()
-
接口说明
...
...
@@ -2196,7 +2187,7 @@ Notification.getDoNotDisturbDate().then((data) => {
##
##
Notification.supportDoNotDisturbMode(callback: AsyncCallback\<boolean\>)
## Notification.supportDoNotDisturbMode(callback: AsyncCallback\<boolean\>)
-
接口说明
...
...
@@ -2224,7 +2215,7 @@ Notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback);
##
##
Notification.supportDoNotDisturbMode()
## Notification.supportDoNotDisturbMode()
-
接口说明
...
...
@@ -2248,15 +2239,15 @@ Notification.supportDoNotDisturbMode().then((data) => {
##
##
WantAgent接口
## WantAgent接口
##
##
导入模块
## 导入模块
```
js
import
WantAgent
from
'
@ohos.wantAgent
'
;
```
##
##
WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\<WantAgent\>)
## WantAgent.getWantAgent(info: WantAgentInfo, callback: AsyncCallback\<WantAgent\>)
-
接口说明
...
...
@@ -2291,11 +2282,6 @@ import WantAgent from '@ohos.wantAgent';
| CANCEL_PRESENT_FLAG | 只读 | enum | 否 | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象 |
| UPDATE_PRESENT_FLAG | 只读 | enum | 否 | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据 |
| CONSTANT_FLAG | 只读 | enum | 否 | WantAgent是不可变的 |
| REPLACE_ELEMENT | 只读 | enum | 否 | 当前Want中的element属性可被WantAgent.trigger()中Want的element属性取代 |
| REPLACE_ACTION | 只读 | enum | 否 | 当前Want中的action属性可被WantAgent.trigger()中Want的action属性取代 |
| REPLACE_URI | 只读 | enum | 否 | 当前Want中的uri属性可被WantAgent.trigger()中Want的uri属性取代 |
| REPLACE_ENTITIES | 只读 | enum | 否 | 当前Want中的entities属性可被WantAgent.trigger()中Want的entities属性取代 |
| REPLACE_BUNDLE | 只读 | enum | 否 | 当前Want中的bundleName属性可被WantAgent.trigger()中Want的bundleName属性取代 |
-
OperationType类型说明
...
...
@@ -2314,8 +2300,8 @@ import WantAgent from '@ohos.wantAgent';
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//getWantAgent回调
function
getWantAgentCallback
(
err
,
data
)
{
...
...
@@ -2349,12 +2335,12 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
W
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
```
##
##
WantAgent.getWantAgent(info: WantAgentInfo): Promise\<WantAgent\>
## WantAgent.getWantAgent(info: WantAgentInfo): Promise\<WantAgent\>
-
接口说明
...
...
@@ -2374,8 +2360,8 @@ wantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//WantAgentInfo对象
var
wantAgentInfo
=
{
...
...
@@ -2405,14 +2391,14 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
W
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
});
```
##
##
WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\<string\>)
## WantAgent.getBundleName(agent: WantAgent, callback: AsyncCallback\<string\>)
-
接口说明
...
...
@@ -2433,17 +2419,17 @@ wantAgent.getWantAgent(wantAgentInfo).then((data) => {
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//getWantAgent回调
function
getWantAgentCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
if
(
err
.
code
==
0
)
{
W
antAgent
=
data
;
w
antAgent
=
data
;
}
else
{
console
.
info
(
'
----getWantAgent failed!----
'
);
}
...
...
@@ -2476,18 +2462,18 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
W
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
//getBundleName回调
function
getBundleNameCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getBundleNameCallback=======================>
"
);
}
wantAgent
.
getBundleName
(
W
antAgent
,
getBundleNameCallback
)
WantAgent
.
getBundleName
(
w
antAgent
,
getBundleNameCallback
)
```
##
##
WantAgent.getBundleName(agent: WantAgent): Promise\<string\>
## WantAgent.getBundleName(agent: WantAgent): Promise\<string\>
-
接口说明
...
...
@@ -2507,11 +2493,11 @@ wantAgent.getBundleName(WantAgent, getBundleNameCallback)
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//WantAgentInfo对象
var
wantAgentInfo
=
{
...
...
@@ -2541,19 +2527,19 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
W
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
W
antAgent
=
data
;
w
antAgent
=
data
;
});
wantAgent
.
getBundleName
(
W
antAgent
).
then
((
data
)
=>
{
WantAgent
.
getBundleName
(
w
antAgent
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getBundleNameCallback=======================>
"
);
});
```
##
##
WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\<number\>)
## WantAgent.getUid(agent: WantAgent, callback: AsyncCallback\<number\>)
-
接口说明
...
...
@@ -2574,17 +2560,17 @@ wantAgent.getBundleName(WantAgent).then((data) => {
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//getWantAgent回调
function
getWantAgentCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
if
(
err
.
code
==
0
)
{
W
antAgent
=
data
;
w
antAgent
=
data
;
}
else
{
console
.
info
(
'
----getWantAgent failed!----
'
);
}
...
...
@@ -2617,18 +2603,18 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
W
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
//getUid回调
function
getUidCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getUidCallback=======================>
"
);
}
wantAgent
.
getUid
(
W
antAgent
,
getUidCallback
)
WantAgent
.
getUid
(
w
antAgent
,
getUidCallback
)
```
##
##
WantAgent.getUid(agent: WantAgent): Promise\<number\>
## WantAgent.getUid(agent: WantAgent): Promise\<number\>
-
接口说明
...
...
@@ -2648,11 +2634,11 @@ wantAgent.getUid(WantAgent, getUidCallback)
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//WantAgentInfo对象
var
wantAgentInfo
=
{
...
...
@@ -2682,19 +2668,19 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
W
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
W
antAgent
=
data
;
w
antAgent
=
data
;
});
wantAgent
.
getUid
(
W
antAgent
).
then
((
data
)
=>
{
WantAgent
.
getUid
(
w
antAgent
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getUidCallback=======================>
"
);
});
```
##
##
WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\<Want\>)
## WantAgent.getWant(agent: WantAgent, callback: AsyncCallback\<Want\>)
-
接口说明
...
...
@@ -2715,17 +2701,17 @@ wantAgent.getUid(WantAgent).then((data) => {
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//getWantAgent回调
function
getWantAgentCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
if
(
err
.
code
==
0
)
{
W
antAgent
=
data
;
w
antAgent
=
data
;
}
else
{
console
.
info
(
'
----getWantAgent failed!----
'
);
}
...
...
@@ -2758,22 +2744,22 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentWantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
W
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
//getWant回调
function
getWantCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getWantCallback=======================>
"
);
}
wantAgent
.
getWant
(
W
antAgent
,
getWantCallback
)
WantAgent
.
getWant
(
w
antAgent
,
getWantCallback
)
```
##
##
WantAgent.getWant(agent: WantAgent): Promise\<Want\>
## WantAgent.getWant(agent: WantAgent): Promise\<Want\>
-
接口说明
获取WantAgent对象的
Uid
(Promise形式)
获取WantAgent对象的
want
(Promise形式)
-
getWant参数描述
...
...
@@ -2789,11 +2775,11 @@ wantAgent.getWant(WantAgent, getWantCallback)
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//WantAgentInfo对象
var
wantAgentInfo
=
{
...
...
@@ -2823,19 +2809,19 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
W
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
W
antAgent
=
data
;
w
antAgent
=
data
;
});
wantAgent
.
getWant
(
W
antAgent
).
then
((
data
)
=>
{
WantAgent
.
getWant
(
w
antAgent
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getWantCallback=======================>
"
);
});
```
##
##
WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\<void\>)
## WantAgent.cancel(agent: WantAgent, callback: AsyncCallback\<void\>)
-
接口说明
...
...
@@ -2856,17 +2842,17 @@ wantAgent.getWant(WantAgent).then((data) => {
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//getWantAgent回调
function
getWantAgentCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
if
(
err
.
code
==
0
)
{
W
antAgent
=
data
;
w
antAgent
=
data
;
}
else
{
console
.
info
(
'
----getWantAgent failed!----
'
);
}
...
...
@@ -2899,18 +2885,18 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
W
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
//cancel回调
function
cancelCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>cancelCallback=======================>
"
);
}
wantAgent
.
cancel
(
W
antAgent
,
cancelCallback
)
WantAgent
.
cancel
(
w
antAgent
,
cancelCallback
)
```
##
##
WantAgent.cancel(agent: WantAgent): Promise\<void\>
## WantAgent.cancel(agent: WantAgent): Promise\<void\>
-
接口说明
...
...
@@ -2930,11 +2916,11 @@ wantAgent.cancel(WantAgent, cancelCallback)
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//WantAgentInfo对象
var
wantAgentInfo
=
{
...
...
@@ -2964,19 +2950,19 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
W
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
W
antAgent
=
data
;
w
antAgent
=
data
;
});
wantAgent
.
cancel
(
W
antAgent
).
then
((
data
)
=>
{
WantAgent
.
cancel
(
w
antAgent
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>cancelCallback=======================>
"
);
});
```
##
##
WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\<CompleteData\>)
## WantAgent.trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\<CompleteData\>)
-
接口说明
...
...
@@ -3007,17 +2993,17 @@ wantAgent.cancel(WantAgent).then((data) => {
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent
;
var
w
antAgent
;
//getWantAgent回调
function
getWantAgentCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
if
(
err
.
code
==
0
)
{
W
antAgent
=
data
;
w
antAgent
=
data
;
}
else
{
console
.
info
(
'
----getWantAgent failed!----
'
);
}
...
...
@@ -3050,7 +3036,7 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
W
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
//trigger回调
function
triggerCallback
(
err
,
data
)
{
...
...
@@ -3060,12 +3046,12 @@ function triggerCallback(err, data) {
var
triggerInfo
=
{
code
:
0
}
wantAgent
.
trigger
(
W
antAgent
,
triggerInfo
,
triggerCallback
)
WantAgent
.
trigger
(
w
antAgent
,
triggerInfo
,
triggerCallback
)
```
##
##
WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\<boolean\>)
## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\<boolean\>)
-
接口说明
...
...
@@ -3087,19 +3073,19 @@ wantAgent.trigger(WantAgent, triggerInfo, triggerCallback)
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent1
;
var
W
antAgent2
;
var
w
antAgent1
;
var
w
antAgent2
;
//getWantAgent回调
function
getWantAgentCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
if
(
err
.
code
==
0
)
{
W
antAgent1
=
data
;
W
antAgent2
=
data
;
w
antAgent1
=
data
;
w
antAgent2
=
data
;
}
else
{
console
.
info
(
'
----getWantAgent failed!----
'
);
}
...
...
@@ -3132,18 +3118,18 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
W
antAgent
.
getWantAgent
(
wantAgentInfo
,
getWantAgentCallback
)
//equal回调
function
equalCallback
(
err
,
data
)
{
console
.
info
(
"
==========================>equalCallback=======================>
"
);
}
wantAgent
.
equal
(
WantAgent1
,
WantAgent1
,
equalCallback
)
WantAgent
.
equal
(
wantAgent1
,
wantAgent2
,
equalCallback
)
```
##
##
WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\<boolean\>
## WantAgent.equal(agent: WantAgent, otherAgent: WantAgent): Promise\<boolean\>
-
接口说明
...
...
@@ -3164,12 +3150,12 @@ wantAgent.equal(WantAgent1, WantAgent1, equalCallback)
-
示例
```
js
import
w
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
Flags
}
from
'
@ohos.wantagent
'
;
import
W
antAgent
from
'
@ohos.wantAgent
'
;
import
{
OperationType
,
WantAgent
Flags
}
from
'
@ohos.wantagent
'
;
//wantAgent对象
var
W
antAgent1
;
var
W
antAgent2
;
var
w
antAgent1
;
var
w
antAgent2
;
//WantAgentInfo对象
var
wantAgentInfo
=
{
...
...
@@ -3199,12 +3185,13 @@ var wantAgentInfo = {
wantAgentFlags
:[
WantAgentFlags
.
UPDATE_PRESENT_FLAG
]
}
w
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
W
antAgent
.
getWantAgent
(
wantAgentInfo
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>getWantAgentCallback=======================>
"
);
WantAgent
=
data
;
wantAgent1
=
data
;
wantAgent2
=
data
;
});
wantAgent
.
equal
(
WantAgent1
,
W
antAgent2
).
then
((
data
)
=>
{
WantAgent
.
equal
(
wantAgent1
,
w
antAgent2
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>equalCallback=======================>
"
);
});
```
...
...
zh-cn/application-dev/reference/apis/js-apis-particleAbility.md
浏览文件 @
ba3112c1
# ParticleAbility模块(JS端SDK接口)
#### 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| ParticleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback
\<
void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.startAbility(parameter: StartAbilityParameter) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.terminateSelf(callback: AsyncCallback
\<
void>) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.terminateSelf() | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| ParticleAbility.acquireDataAbilityHelper(uri: string) | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
#### 权限列表
ohos.permission.RUNNING_LOCK permission
#### 使用限制
ParticleAbility模块的接口只能在Ability为Data和Service类型的时候进行调用
#### 导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
```
#### ParticleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<void>
-
接口说明
服务ability使用此方法启动特定ability(callback形式)
-
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ----------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 指示启动的ability |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
-
StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
-
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
-
返回值
void
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
particleAbility
.
startAbility
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
;
deviceId
:
""
,
bundleName
:
"
com.example.Data
"
,
abilityName
:
"
com.jstest.startabilitytest5.MainAbility
"
,
uri
:
""
},
},
)
```
#### ParticleAbility.startAbility(parameter: StartAbilityParameter)
-
接口说明
服务ability使用此方法启动特定ability((Promise形式)
-
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | --------------------- | ---- | ----------------- |
| parameter | 只读 | StartAbilityParameter | 是 | 指示启动的ability |
-
StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | ------ | ---- | ---------------------------------- |
| want | 只读 | want | 是 | 表示需要包含有关目标启动能力的信息 |
| abilityStartSetting | 只读 | string | 否 | 指示启动能力中使用的特殊启动设置 |
-
want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | -------------------------- |
| deviceId | 只读 | string | 否 | 设备id |
| bundleName | 只读 | string | 否 | 捆绑包名称 |
| abilityName | 只读 | string | 否 | ability 名字 |
| uri | 只读 | string | 否 | 请求中URI的描述 |
| type | 只读 | string | 否 | 此文件中类型的说明 |
| flags | 只读 | number | 否 | 此文件中标志的选项是必需的 |
| action | 只读 | string | 否 | 需求中对操作的描述 |
| parameters | 只读 | string | 否 | Want中WantParams对象的描述 |
| entities | 只读 | string | 否 | 对象中实体的描述 |
-
flags类型说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源异能 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否不属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力片 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示延续是可逆的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,请使用后台模式安装指定的DI功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Intent}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
-
返回值
void
-
示例
```
js
import
featureAbility
from
'
@ohos.ability.featureAbility
'
import
particleAbility
from
'
@ohos.ability.particleAbility
'
var
windowMode
=
featureAbility
.
AbilityStartSetting
.
WINDOW_MODE_KEY
;
particleAbility
.
startAbility
(
want
:
{
bundleName
:
"
com.jstest.featureabilitytest
"
,
abilityName
:
"
com.jstest.startabilitytest1.MainAbility
"
,
},
abilityStartSetting
:
{
windowMode
:
featureAbility
.
AbilityWindowConfiguration
.
WINDOW_MODE_FLOATING
,
},
}
).
then
((
void
)
=>
{
console
.
info
(
"
==========================>startAbilityCallback=======================>
"
);
});
```
#### ParticleAbility.terminateSelf(callback: AsyncCallback\<void>)
-
接口说明
摧毁服务ability(callback形式)
-
terminateSelf参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
ParticleAbility
.
terminateSelf
()
```
#### ParticleAbility.terminateSelf()
-
接口说明
摧毁服务ability(Promise形式)
-
返回值
void
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
particleAbility
.
terminateSelf
().
then
((
void
)
=>
{
console
.
info
(
"
==========================>terminateSelfCallback=======================>
"
);
});
```
#### ParticleAbility.acquireDataAbilityHelper(uri: string)
-
接口说明
获取dataAbilityHelper
-
acquireDataAbilityHelper参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| :--- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
-
返回值
返回dataAbilityHelper
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
var
uri
=
""
;
ParticleAbility
.
acquireDataAbilityHelper
(
uri
)
```
#### ParticleAbility.connectAbility(*request*: Want, *options*:ConnectOptions): number
*
接口说明
将当前ability连接到指定ServiceAbility(callback形式)
*
connectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------- | -------- | -------------- | ---- | -------------------------- |
| request | 只读 | Want | 是 | 表示被连接的ServiceAbility |
| options | 只读 | ConnectOptions | 是 | 被指定的回调方法 |
-
ConnectOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| onConnect | 只读 | function | 是 | 连接成功时的回调函数 |
| onDisconnect | 只读 | function | 是 | 连接失败时的回调函数 |
| onFailed | 只读 | function | 是 | ConnectAbility调用失败时的回调函数 |
*
返回值
连接的ServiceAbilityID。
*
示例
```
javascript
import
particleAbility
from
'
@ohos.ability.particleAbility
'
var
mRemote
;
var
connId
;
function
onConnectCallback
(
element
,
remote
){
mRemote
=
remote
;
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
particleAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
particleAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
```
#### ParticleAbility.disconnectAbility(connection: number, callback:AsyncCallback<void>): void
*
接口说明
断开与指定ServiceAbility的连接(callback形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback | 是 | 被指定的回调方法 |
*
返回值
无
*
示例
```
javascript
import
particleAbility
from
'
@ohos.ability.particleAbility
'
var
mRemote
;
var
connId
;
function
onConnectCallback
(
element
,
remote
){
mRemote
=
remote
;
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
particleAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
particleAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
particleAbility
.
disconnectAbility
(
connId
,
(
error
,
data
)
=>
{
console
.
log
(
'
particleAbilityTest DisConnectJsSameBundleName result errCode :
'
+
error
.
code
+
"
data:
"
+
data
)
},
);
```
#### ParticleAbility.disconnectAbility(connection: number): Promise<void>;
*
接口说明
断开与指定ServiceAbility的连接(promise形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
*
返回值
无
*
示例
```
javascript
import
particleAbility
from
'
@ohos.ability.particleAbility
'
var
mRemote
;
var
connId
;
function
onConnectCallback
(
element
,
remote
){
mRemote
=
remote
;
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
particleAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
particleAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
await
particleAbility
.
disconnectAbility
(
connId
);
```
# particleAbility模块
## 支持设备
| API | 手机 | 平板 | 智慧屏 | 智能穿戴 | 轻量级智能穿戴 | 智慧视觉设备 |
| ------------------------------------------------------------ | ---- | ---- | ------ | -------- | -------------- | ------------ |
| particleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback
\<
void>: void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.startAbility(parameter: StartAbilityParameter): Promise
\<
number> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.terminateSelf(callback: AsyncCallback
\<
void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.terminateSelf(): Promise
\<
void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.connectAbility(request: Want, options:ConnectOptions): number | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.disconnectAbility(connection: number, callback:AsyncCallback
\<
void>): void | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| particleAbility.disconnectAbility(connection: number): Promise
\<
void> | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
## 使用限制
particleAbility模块用来对Data和Service类型的Ability进行操作
## 导入模块
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
```
## particleAbility.startAbility(parameter: StartAbilityParameter, callback: AsyncCallback\<void>: void
-
接口说明
使用此方法启动指定的particleAbility(callback形式)
-
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ----------------- |
| parameter | 只读 |
[
StartAbilityParameter
](
#StartAbilityParameter类型说明
)
| 是 | 指示启动的ability |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
particleAbility
.
startAbility
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
;
deviceId
:
""
,
bundleName
:
"
com.example.Data
"
,
abilityName
:
"
com.example.Data.MainAbility
"
,
uri
:
""
},
},
(
error
,
result
)
=>
{
console
.
log
(
'
particleAbility startAbility errCode:
'
+
error
+
'
result:
'
+
result
)
},
)
```
## particleAbility.startAbility(parameter: StartAbilityParameter): Promise\<number>
-
接口说明
使用此方法启动指定的particleAbility(Promise形式)
-
startAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| --------- | -------- | ------------------------------------------------------- | ---- | ----------------- |
| parameter | 只读 |
[
StartAbilityParameter
](
#StartAbilityParameter类型说明
)
| 是 | 指示启动的ability |
-
返回值
Promise
\<
void>
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
particleAbility
.
startAbility
(
{
want
:
{
action
:
"
action.system.home
"
,
entities
:
[
"
entity.system.home
"
],
type
:
"
MIMETYPE
"
,
flags
:
FLAG_AUTH_READ_URI_PERMISSION
;
deviceId
:
""
,
bundleName
:
"
com.example.Data
"
,
abilityName
:
"
com.example.Data.MainAbility
"
,
uri
:
""
},
},
).
then
((
void
)
=>
{
console
.
info
(
"
particleAbility startAbility
"
);
});
```
## particleAbility.terminateSelf(callback: AsyncCallback\<void>): void
-
接口说明
终止particleAbility(callback形式)
-
terminateSelf参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| -------- | -------- | -------------------- | ---- | -------------------- |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 表示被指定的回调方法 |
-
返回值
void
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
particleAbility
.
terminateSelf
(
(
error
,
result
)
=>
{
console
.
log
(
'
particleAbility terminateSelf errCode:
'
+
error
+
'
result:
'
+
result
)
}
)
```
## particleAbility.terminateSelf(): Promise\<void>
-
接口说明
终止particleAbility(Promise形式)
-
返回值
Promise
\<
void>
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
particleAbility
.
terminateSelf
().
then
((
void
)
=>
{
console
.
info
(
"
particleAbility terminateSelf
"
);
});
```
## particleAbility.acquireDataAbilityHelper(uri: string): DataAbilityHelper
-
接口说明
获取dataAbilityHelper
-
acquireDataAbilityHelper参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| :--- | -------- | ------ | ---- | ---------------------- |
| uri | 只读 | string | 是 | 指示要打开的文件的路径 |
-
返回值
| 类型 | 说明 |
| ----------------- | ------------------------------------------ |
| DataAbilityHelper | 用来协助其他Ability访问DataAbility的工具类 |
-
示例
```
js
import
particleAbility
from
'
@ohos.ability.particleAbility
'
var
uri
=
""
;
particleAbility
.
acquireDataAbilityHelper
(
uri
)
```
## particleAbility.connectAbility(request: Want, options:ConnectOptions): number
*
接口说明
将当前ability连接到指定ServiceAbility(callback形式)
*
connectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------- | -------- | -------------- | ---- | -------------------------- |
| request | 只读 | Want | 是 | 表示被连接的ServiceAbility |
| options | 只读 | ConnectOptions | 是 | 被指定的回调方法 |
-
ConnectOptions类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------ | -------- | -------- | ---- | ---------------------------------- |
| onConnect | 只读 | function | 是 | 连接成功时的回调函数 |
| onDisconnect | 只读 | function | 是 | 断开连接时的回调函数 |
| onFailed | 只读 | function | 是 | ConnectAbility调用失败时的回调函数 |
*
返回值
标识一次连接。
*
示例
```
javascript
import
particleAbility
from
'
@ohos.ability.particleAbility
'
function
onConnectCallback
(
element
,
remote
){
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
particleAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
particleAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
com.ix.ServiceAbility.ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
```
## particleAbility.disconnectAbility(connection: number, callback:AsyncCallback\<void>): void
*
接口说明
断开与指定ServiceAbility的连接(callback形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------------- | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
| callback | 只读 | AsyncCallback
\<
void> | 是 | 被指定的回调方法 |
*
返回值
void
*
示例
```
javascript
import
particleAbility
from
'
@ohos.ability.particleAbility
'
function
onConnectCallback
(
element
,
remote
){
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
particleAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
particleAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
com.ix.ServiceAbility.ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
particleAbility
.
disconnectAbility
(
connId
,
(
error
,
data
)
=>
{
console
.
log
(
'
particleAbilityTest DisConnectAbility result errCode :
'
+
error
.
code
+
"
data:
"
+
data
)
},
);
```
## particleAbility.disconnectAbility(connection: number): Promise\<void>
*
接口说明
断开与指定ServiceAbility的连接(promise形式)
*
disconnectAbility参数描述
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ---------- | -------- | ------ | ---- | ------------------------------ |
| connection | 只读 | number | 是 | 指定断开连接的ServiceAbilityID |
*
返回值
Promise
\<
void>
*
示例
```
javascript
import
particleAbility
from
'
@ohos.ability.particleAbility
'
function
onConnectCallback
(
element
,
remote
){
console
.
log
(
'
ConnectAbility onConnect remote is proxy:
'
+
(
remote
instanceof
rpc
.
RemoteProxy
));
}
function
onDisconnectCallback
(
element
){
console
.
log
(
'
ConnectAbility onDisconnect element.deviceId :
'
+
element
.
deviceId
)
}
function
onFailedCallback
(
code
){
console
.
log
(
'
particleAbilityTest ConnectAbility onFailed errCode :
'
+
code
)
}
var
connId
=
particleAbility
.
connectAbility
(
{
bundleName
:
"
com.ix.ServiceAbility
"
,
abilityName
:
"
com.ix.ServiceAbility.ServiceAbilityA
"
,
},
{
onConnect
:
onConnectCallback
,
onDisconnect
:
onDisconnectCallback
,
onFailed
:
onFailedCallback
,
},
);
var
result
=
particleAbility
.
disconnectAbility
(
connId
).
then
((
void
)
=>
{
console
.
info
(
"
particleAbilityTest disconnectAbility
"
);
});
```
## StartAbilityParameter类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------------- | -------- | --------------------- | ---- | ------------------------------------------------------------ |
| want | 只读 |
[
Want
](
#Want类型说明
)
| 是 | 表示需要包含有关目标启动能力的信息。 |
| abilityStartSetting | 只读 | {[key: string]: any} | 否 | 表示能力的特殊属性,当开发者启动能力时,该属性可以作为调用中的输入参数传递。 |
## Want类型说明
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | -------------------- | ---- | ------------------------------------------------------------ |
| deviceId | 只读 | string | 否 | 表示运行指定Ability的设备ID。 |
| bundleName | 只读 | string | 否 | 表示包描述。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| abilityName | 只读 | string | 否 | 表示待启动的Ability名称。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| uri | 只读 | string | 否 | 表示Uri描述。如果在Want中指定了Uri,则Want将匹配指定的Uri信息,包括scheme, schemeSpecificPart, authority和path信息。 |
| type | 只读 | string | 否 | 表示MIME type类型描述,比如:"text/plain" 、 "image/
*
"等。 |
| flags | 只读 | number | 否 | 表示处理Want的方式。默认传数字,具体参考:
[
flags说明
](
#flags说明
)
。 |
| action | 只读 | string | 否 | 表示action选项描述。 |
| parameters | 只读 | {[key: string]: any} | 否 | 表示WantParams描述。 |
| entities | 只读 | Array
\<
string> | 否 | 表示entities相关描述。 |
## flags说明
| 名称 | 参数 | 描述 |
| ------------------------------------ | ---------- | ------------------------------------------------------------ |
| FLAG_AUTH_READ_URI_PERMISSION | 0x00000001 | 指示对URI执行读取操作的授权 |
| FLAG_AUTH_WRITE_URI_PERMISSION | 0x00000002 | 指示对URI执行写入操作的授权 |
| FLAG_ABILITY_FORWARD_RESULT | 0x00000004 | 将结果返回给源能力 |
| FLAG_ABILITY_CONTINUATION | 0x00000008 | 确定是否可以将本地设备上的功能迁移到远程设备 |
| FLAG_NOT_OHOS_COMPONENT | 0x00000010 | 指定组件是否属于OHOS |
| FLAG_ABILITY_FORM_ENABLED | 0x00000020 | 指定是否启动某个能力 |
| FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 0x00000040 | 指示URI上可能持久化的授权 |
| FLAG_AUTH_PREFIX_URI_PERMISSION | 0x00000080 | 将结果返回到源能力 |
| FLAG_ABILITYSLICE_MULTI_DEVICE | 0x00000100 | 支持分布式调度系统中的多设备启动 |
| FLAG_START_FOREGROUND_ABILITY | 0x00000200 | 指示无论主机应用程序是否已启动,都将启动使用服务模板的功能 |
| FLAG_ABILITY_CONTINUATION_REVERSIBLE | 0x00000400 | 表示迁移是可拉回的。 |
| FLAG_INSTALL_ON_DEMAND | 0x00000800 | 如果未安装指定的功能,请安装该功能 |
| FLAG_INSTALL_WITH_BACKGROUND_MODE | 0x80000000 | 如果未安装,使用后台模式安装该功能。 |
| FLAG_ABILITY_CLEAR_MISSION | 0x00008000 | 指示清除其他任务的操作。可以为传递给{@link ohos.app.Context#startAbility}的{@code Want}设置此标志,并且必须与{@link flag_ABILITY_NEW_MISSION}一起使用 |
| FLAG_ABILITY_NEW_MISSION | 0x10000000 | 指示在历史任务堆栈上创建任务的操作。 |
| FLAG_ABILITY_MISSION_TOP | 0x20000000 | 指示如果启动能力的现有实例已位于任务堆栈的顶部,则将重用该实例。否则,将创建一个新的能力实例。 |
## AbilityStartSetting类型说明
abilityStartSetting属性是一个定义为[key: string]: any的对象,key对应设定类型为:AbilityStartSetting枚举类型,value对应设定类型为:AbilityWindowConfiguration枚举类型。
使用时通过featureAbility.AbilityStartSetting获取,示例:featureAbility.AbilityStartSetting.BOUNDS_KEY。
| 名称 | 参数 | 描述 |
| --------------- | --------------- | -------------------------- |
| BOUNDS_KEY | "abilityBounds" | 窗口显示大小属性的名称。 |
| WINDOW_MODE_KEY | "windowMode" | 窗口显示模式属性的名称。 |
| DISPLAY_ID_KEY | "displayId" | 窗口显示设备ID属性的名称。 |
## AbilityWindowConfiguration类型说明
使用时通过featureAbility.AbilityWindowConfiguration获取,示例:featureAbility.AbilityWindowConfiguration.WINDOW_MODE_UNDEFINED。
| 名称 | 参数 | 描述 |
| --------------------------- | ---- | ---------- |
| WINDOW_MODE_UNDEFINED | 0 | 未定义。 |
| WINDOW_MODE_FULLSCREEN | 1 | 全屏。 |
| WINDOW_MODE_SPLIT_PRIMARY | 100 | 分屏主屏。 |
| WINDOW_MODE_SPLIT_SECONDARY | 101 | 分屏次屏。 |
| WINDOW_MODE_FLOATING | 102 | 悬浮窗。 |
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录