鸿蒙开发设备管理:【@ohos.vibrator (振动)】

振动

说明:
开发前请熟悉鸿蒙开发指导文档gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。

本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import vibrator from '@ohos.vibrator';

vibrator.vibrate

vibrate(duration: number): Promise

按照指定持续时间触发马达振动。

权限列表:ohos.permission.VIBRATE,该权限为系统权限

系统能力:SystemCapability.Sensors.MiscDevice

参数:

参数名 类型 必填 说明
duration number 指示马达振动的持续时间。

返回值:

类型 说明
Promise 指示触发振动是否成功。

示例:

vibrator.vibrate(1000).then(()=>{
    console.log("Promise returned to indicate a successful vibration.");
}, (error)=>{
    console.log("error.code"+error.code+"error.message"+error.message);
});

vibrator.vibrate

vibrate(duration: number, callback?: AsyncCallback): void

按照指定持续时间触发马达振动。

权限列表:ohos.permission.VIBRATE,该权限为系统权限

系统能力:SystemCapability.Sensors.MiscDevice

参数:

参数名 类型 必填 说明
duration number 指示马达振动的持续时间。
callback AsyncCallback 马达执行振动的回调函数,指示触发振动是否成功。

示例:

vibrator.vibrate(1000,function(error){
    if(error){
        console.log("error.code"+error.code+"error.message"+error.message);
    }else{
        console.log("Callback returned to indicate a successful vibration.");
    }
})

vibrator.vibrate

vibrate(effectId: EffectId): Promise

按照指定振动效果触发马达振动。

权限列表:ohos.permission.VIBRATE,该权限为系统权限

系统能力:SystemCapability.Sensors.MiscDevice

参数:

参数名 类型 必填 说明
effectId [EffectId] 指示马达振动效果的字符串。

返回值:

类型 说明
Promise 指示触发振动是否成功。

示例:

vibrator.vibrate(vibrator.EffectId.EFFECT_CLOCK_TIMER).then(()=>{
    console.log("Promise returned to indicate a successful vibration.");
}, (error)=>{
    console.log("error.code"+error.code+"error.message"+error.message);
});

vibrator.vibrate

vibrate(effectId: EffectId, callback?: AsyncCallback): void

按照指定振动效果触发马达振动。

权限列表:ohos.permission.VIBRATE,该权限为系统权限

系统能力:SystemCapability.Sensors.MiscDevice

参数:

参数名 类型 必填 说明
effectId [EffectId] 指示马达振动效果的字符串。
callback AsyncCallback 马达执行振动的回调函数,指示触发振动是否成功。

示例:

vibrator.vibrate(vibrator.EffectId.EFFECT_CLOCK_TIMER, function(error){
    if(error){
        console.log("error.code"+error.code+"error.message"+error.message);
    }else{
        console.log("Callback returned to indicate a successful vibration.");
    }
})

vibrator.stop

stop(stopMode: VibratorStopMode): Promise

按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。

权限列表:ohos.permission.VIBRATE,该权限为系统权限

系统能力:SystemCapability.Sensors.MiscDevice

参数:

参数名 类型 必填 说明
stopMode [VibratorStopMode] 指示马达要停止指定的振动模式。

返回值:

类型 说明
Promise 指示停止振动是否成功。

示例:

vibrator.stop(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET).then(()=>{
    console.log("Promise returned to indicate a successful vibration.");
}, (error)=>{
    console.log("error.code"+error.code+"error.message"+error.message);
});

vibrator.stop

stop(stopMode: VibratorStopMode, callback?: AsyncCallback): void;

按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。

权限列表:ohos.permission.VIBRATE,该权限为系统权限

系统能力:SystemCapability.Sensors.MiscDevice

参数:

参数名 类型 必填 说明
stopMode [VibratorStopMode] 指示马达要停止指定的振动模式。
callback AsyncCallback 马达停止振动的回调函数,指示停止振动是否成功。

示例:

vibrator.stop(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET, function(error){
    if(error){
        console.log("error.code"+error.code+"error.message"+error.message);
    }else{
        console.log("Callback returned to indicate successful.");
    }
})

EffectId

表示马达振动效果的字符串。

系统能力:以下各项对应的系统能力均为SystemCapability.Sensors.MiscDevice

名称 默认值 说明 HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿
EFFECT_CLOCK_TIMER "haptic.clock.timer" 调整定时器时振动器的振动效果。

VibratorStopMode

表示马达要停止指定的振动模式。

系统能力:以下各项对应的系统能力均为SystemCapability.Sensors.MiscDevice

名称 默认值 说明
VIBRATOR_STOP_MODE_TIME "time" 停止模式为duration模式的振动。即触发振动时参数类型为number,参数本身为指示振动持续时间的触发方式。
VIBRATOR_STOP_MODE_PRESET "preset" 停止模式为预置EffectId的振动。即触发振动时参数类型为EffectId,参数本身为指示马达振动效果的字符串的触发方式。
相关推荐
SuperHeroWu742 分钟前
【HarmonyOS】键盘遮挡输入框UI布局处理
华为·harmonyos·压缩·keyboard·键盘遮挡·抬起
努力变厉害的小超超5 小时前
ArkTS中的组件基础、状态管理、样式处理、class语法以及界面渲染
笔记·鸿蒙
sanzk5 小时前
华为鸿蒙应用开发
华为·harmonyos
SoraLuna9 小时前
「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现
macos·ui·harmonyos
ClkLog-开源埋点用户分析11 小时前
ClkLog企业版(CDP)预售开启,更有鸿蒙SDK前来助力
华为·开源·开源软件·harmonyos
mg66811 小时前
鸿蒙系统的优势 开发 环境搭建 开发小示例
华为·harmonyos
lqj_本人11 小时前
鸿蒙next选择 Flutter 开发跨平台应用的原因
flutter·华为·harmonyos
lqj_本人11 小时前
使用 Flutter 绘制一个棋盘
harmonyos
前端宝哥14 小时前
10 个超赞的开发者工具,助你轻松提升效率
前端·程序员
lqj_本人14 小时前
Flutter&鸿蒙next 状态管理框架对比分析
flutter·华为·harmonyos