Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
021d116f
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看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
021d116f
编写于
9月 01, 2022
作者:
O
openharmony_ci
提交者:
Gitee
9月 01, 2022
浏览文件
操作
浏览文件
下载
差异文件
!8737 add interface of vibrate on api9
Merge pull request !8737 from 17349030869/master
上级
044e5f5d
1a2bc782
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
178 addition
and
51 deletion
+178
-51
zh-cn/application-dev/reference/apis/js-apis-vibrator.md
zh-cn/application-dev/reference/apis/js-apis-vibrator.md
+178
-51
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-vibrator.md
浏览文件 @
021d116f
# 振动
## 模块说明
vibrator模块提供控制马达振动的能力,如通过接口控制马达启动马达振动,停止马达振动等。
小器件是指用于向外传递信号的设备,包括马达和LED灯,本组件对开发者提供控制马达振动和LED灯开关的能力。
> **说明:**
>
> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
...
...
@@ -23,23 +19,24 @@ vibrate(duration: number): Promise<void>
按照指定持续时间触发马达振动。
**
权限列表
**
:ohos.permission.VIBRATE,该权限为系统权限
**
需要权限
**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------ | ---- | ------------ |
| duration | number | 是 | 指示马达振动的持续时间。 |
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------ | ---- | ---------------------- |
| duration | number | 是 | 马达振动时长, 单位ms。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ----------- |
| Promise
<
void
>
| 指示触发振动是否成功。 |
| 类型 | 说明 |
| ------------------- | -------------------------------------- |
| Promise
<
void
>
| Promise对象。无返回结果的Promise对象。 |
**示例:**
```
js
vibrator
.
vibrate
(
1000
).
then
(()
=>
{
console
.
log
(
"
Promise returned to indicate a successful vibration.
"
);
...
...
@@ -48,6 +45,44 @@ vibrate(duration: number): Promise<void>
});
```
## vibrator.vibrate<sup>9+</sup>
vibrate(effect: VibrateEffect, attribute: VibrateAttribute): Promise
<
void
>
按照指定振动效果和振动属性触发马达振动。
**需要权限**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------------- | ---- | :------------- |
| effect |
[
VibrateEffect
](
#vibrateeffect
)
| 是 | 马达振动效果。 |
| attribute |
[
VibrateAttribute
](
#vibrateattribute
)
| 是 | 马达振动属性。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------------------- |
| Promise
<
void
>
| Promise对象。无返回结果的Promise对象。 |
**示例:**
```
js
vibrator
.
vibrate
({
type
:
'
time
'
,
duration
:
1000
},
{
id
:
0
,
usage
:
'
alarm
'
}).
then
((
result
)
=>
{
console
.
log
(
"
Promise returned to indicate a successful vibration
"
);
}).
catch
((
error
)
=>
{
console
.
log
(
"
error.code
"
+
error
.
code
+
"
error.message
"
+
error
.
message
);
})
```
## vibrator.vibrate
...
...
@@ -55,17 +90,18 @@ vibrate(duration: number, callback?: AsyncCallback<void>): void
按照指定持续时间触发马达振动。
**
权限列表
**
:ohos.permission.VIBRATE,该权限为系统权限
**
需要权限
**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------- | ---- | ----------------------- |
| duration | number | 是
| 指示马达振动的持续时间。
|
| callback | AsyncCallback
<
void
>
| 否
| 马达执行振动的回调函数,指示触发振动是否成功
。 |
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------- | ---- | -----------------------
-----------------------------------
|
| duration | number | 是
| 马达振动时长, 单位ms。
|
| callback | AsyncCallback
<
void
>
| 否
| 回调函数。当马达振动成功,err为undefined,否则为错误对象
。 |
**示例:**
```
js
vibrator
.
vibrate
(
1000
,
function
(
error
){
if
(
error
){
...
...
@@ -81,21 +117,21 @@ vibrate(duration: number, callback?: AsyncCallback<void>): void
vibrate(effectId: EffectId): Promise
<
void
>
按照
指定
振动效果触发马达振动。
按照
预置
振动效果触发马达振动。
**
权限列表
**
:ohos.permission.VIBRATE,该权限为系统权限
**
需要权限
**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名
| 类型 | 必填 | 说明
|
| -------- | --------------------- | ---- | ------------- |
| effectId |
[
EffectId
](
#effectid
)
| 是
| 指示马达振动效果的字符串
。 |
| 参数名
| 类型 | 必填 | 说明
|
| -------- | --------------------- | ---- | -------------
-----
|
| effectId |
[
EffectId
](
#effectid
)
| 是
| 预置的振动效果ID
。 |
**返回值:**
| 类型
| 说明
|
| ------------------- | ----------- |
| Promise
<
void
>
|
指示触发振动是否成功
。 |
| 类型
| 说明
|
| ------------------- | -----------
---------------------------
|
| Promise
<
void
>
|
Promise对象。无返回结果的Promise对象
。 |
**示例:**
```
js
...
...
@@ -113,17 +149,18 @@ vibrate(effectId: EffectId, callback?: AsyncCallback<void>): void
按照指定振动效果触发马达振动。
**
权限列表
**
:ohos.permission.VIBRATE,该权限为系统权限
**
需要权限
**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------- | ---- | ----------------------- |
| effectId |
[
EffectId
](
#effectid
)
| 是
| 指示马达振动效果的字符串。
|
| callback | AsyncCallback
<
void
>
| 否
| 马达执行振动的回调函数,指示触发振动是否成功
。 |
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------- | ---- | -----------------------
-----------------------------------
|
| effectId |
[
EffectId
](
#effectid
)
| 是
| 预置的振动效果ID。
|
| callback | AsyncCallback
<
void
>
| 否
| 回调函数。当马达振动成功,err为undefined,否则为错误对象
。 |
**示例:**
```
js
vibrator
.
vibrate
(
vibrator
.
EffectId
.
EFFECT_CLOCK_TIMER
,
function
(
error
){
if
(
error
){
...
...
@@ -134,6 +171,41 @@ vibrate(effectId: EffectId, callback?: AsyncCallback<void>): void
})
```
## vibrator.vibrate<sup>9+</sup>
vibrate(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback
<
void
>
): void
按照指定振动效果和振动属性触发马达振动。
**需要权限**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------------- | ---- | :--------------------------------------------------------- |
| effect |
[
VibrateEffect
](
#vibrateeffect
)
| 是 | 马达振动效果。 |
| attribute |
[
VibrateAttribute
](
#vibrateattribute
)
| 是 | 马达振动属性。 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。当马达振动成功,err为undefined,否则为错误对象。 |
示例:
```
js
vibrator
.
vibrate
({
type
:
'
time
'
,
duration
:
1000
,
},{
id
:
0
,
usage
:
'
alarm
'
},
(
error
)
=>
{
if
(
error
){
console
.
log
(
TAG
+
"
fail, error.code:
"
+
error
.
code
+
"
,error.message:
"
+
error
.
message
);
}
else
{
console
.
log
(
"
Callback returned to indicate a successful vibration.
"
);
}
});
```
## vibrator.stop
...
...
@@ -141,21 +213,23 @@ stop(stopMode: VibratorStopMode): Promise<void>
按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。
**
权限列表
**
:ohos.permission.VIBRATE,该权限为系统权限
**
需要权限
**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------------------- | ---- | --------------- |
| stopMode |
[
VibratorStopMode
](
#vibratorstopmode
)
| 是
| 指示马达要
停止指定的振动模式。 |
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------------------- | ---- | ---------------
---------
|
| stopMode |
[
VibratorStopMode
](
#vibratorstopmode
)
| 是
| 马达
停止指定的振动模式。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ----------- |
| Promise
<
void
>
| 指示停止振动是否成功。 |
| 类型 | 说明 |
| ------------------- | -------------------------------------- |
| Promise
<
void
>
| Promise对象。无返回结果的Promise对象。 |
**示例:**
```
js
vibrator
.
stop
(
vibrator
.
VibratorStopMode
.
VIBRATOR_STOP_MODE_PRESET
).
then
(()
=>
{
console
.
log
(
"
Promise returned to indicate a successful vibration.
"
);
...
...
@@ -171,17 +245,18 @@ stop(stopMode: VibratorStopMode, callback?: AsyncCallback<void>): void;
按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。
**
权限列表
**
:ohos.permission.VIBRATE,该权限为系统权限
**
需要权限
**
:ohos.permission.VIBRATE,该权限为系统权限
**系统能力**
:SystemCapability.Sensors.MiscDevice
**参数:**
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------------------- | ---- | ----------------------- |
| stopMode |
[
VibratorStopMode
](
#vibratorstopmode
)
| 是
| 指示马达要停止指定的振动模式。
|
| callback | AsyncCallback
<
void
>
| 否
| 马达停止振动的回调函数,指示停止振动是否成功
。 |
| 参数名
| 类型 | 必填 | 说明
|
| -------- | ------------------------------------- | ---- | -----------------------
-------------------------------------
|
| stopMode |
[
VibratorStopMode
](
#vibratorstopmode
)
| 是
| 马达停止指定的振动模式。
|
| callback | AsyncCallback
<
void
>
| 否
| 回调函数。当马达停止振动成功,err为undefined,否则为错误对象
。 |
**示例:**
```
js
vibrator
.
stop
(
vibrator
.
VibratorStopMode
.
VIBRATOR_STOP_MODE_PRESET
,
function
(
error
){
if
(
error
){
...
...
@@ -195,22 +270,74 @@ stop(stopMode: VibratorStopMode, callback?: AsyncCallback<void>): void;
## EffectId
表示
马达振动效果的字符串。
马达振动效果的字符串。
**系统能力**
:以下各项对应的系统能力均为SystemCapability.Sensors.MiscDevice
| 名称
| 默认值 | 说明
|
| ------------------ | -------------------- | --------------- |
| EFFECT_CLOCK_TIMER | "haptic.clock.timer" |
调整定时器时振动器的振动效果
。 |
| 名称
| 默认值 | 说明
|
| ------------------ | -------------------- | ---------------
---
|
| EFFECT_CLOCK_TIMER | "haptic.clock.timer" |
预置的振动效果ID
。 |
## VibratorStopMode
表示
马达要停止指定的振动模式。
马达要停止指定的振动模式。
**系统能力**
:以下各项对应的系统能力均为SystemCapability.Sensors.MiscDevice
| 名称 | 默认值 | 说明 |
| ------------------------- | -------- | ---------------------------------------- |
| VIBRATOR_STOP_MODE_TIME | "time" | 停止模式为duration模式的振动。即触发振动时参数类型为number,参数本身为指示振动持续时间的触发方式。 |
| VIBRATOR_STOP_MODE_PRESET | "preset" | 停止模式为预置EffectId的振动。即触发振动时参数类型为EffectId,参数本身为指示马达振动效果的字符串的触发方式。 |
| 名称 | 默认值 | 说明 |
| ------------------------- | -------- | ------------------------------------------------------------ |
| VIBRATOR_STOP_MODE_TIME | "time" | 停止模式为duration模式的振动。即触发振动时参数类型为number,参数本身为振动持续时间的触发方式。 |
| VIBRATOR_STOP_MODE_PRESET | "preset" | 停止模式为预置EffectId的振动。即触发振动时参数类型为EffectId,参数本身为马达振动效果的字符串的触发方式。 |
## VibrateEffect<sup>9+</sup>
| 类型 | 说明 |
| ------------------------------- | ------------------------------ |
|
[
VibrateTime
](
#vibratetime
)
| 按照指定持续时间触发马达振动。 |
|
[
VibratePreset
](
#vibratepreset
)
| 按照预置振动类型触发马达振动。 |
## VibrateTime<sup>9+</sup>
马达振动时长。
| 名称 | 默认值 | 说明 |
| -------- | ------ | ------------------------------ |
| type | "time" | 按照指定持续时间触发马达振动。 |
| duration | - | 马达振动时长, 单位ms。 |
## VibratePreset<sup>9+</sup>
马达预置振动类型。
| 名称 | 默认值 | 说明 |
| -------- | -------- | ------------------------------ |
| type | "preset" | 按照预置振动效果触发马达振动。 |
| effectId | - | 预置的振动效果ID。 |
| count | - | 重复振动的次数。 |
## VibrateAttribute<sup>9+</sup>
马达振动属性。
| 名称 | 默认值 | 说明 |
| ----- | ------ | -------------- |
| id | 0 | 振动器id。 |
| usage | - | 马达振动场景。 |
## Usage<sup>9+</sup>
振动使用场景。
| 名称 | 类型 | 说明 |
| ---------------- | ------ | ------------------------------ |
| unknown | string | 没有明确使用场景,最低优先级。 |
| alarm | string | 用于警报振动的场景。 |
| ring | string | 用于铃声振动的场景。 |
| notification | string | 用于通知振动的场景。 |
| communication | string | 用于通信振动的场景。 |
| touch | string | 用于触摸振动的场景。 |
| media | string | 用于多媒体振动的场景。 |
| physicalFeedback | string | 用于物理反馈振动的场景。 |
| simulateReality | string | 用于模拟现实振动的场景。 |
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录