振动

About 3 min

振动

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

导入模块

import vibrate from '@ohos.vibrator';
1

权限列表

ohos.permission.VIBRATE

vibrate.vibrate

vibrate(duration: number): Promise<void>

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

  • 参数:

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

    类型 说明
    Promise<void> 指示触发振动是否成功。
  • 示例:

    vibrator.vibrate(1000).then(error)=>{
       if(error){  
           console.log(“error.code”+error.code+“error.message”+error.message);
       }else{
           console.log(“Promise returned to indicate a successful vibration.”);
       }
    }
    
    1
    2
    3
    4
    5
    6
    7

vibrate.vibrate

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

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

  • 参数:

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

    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.”);
       }
    })
    
    1
    2
    3
    4
    5
    6
    7

vibrate.vibrate

vibrate(effectId: EffectId): Promise<void>

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

  • 参数:

    参数名 类型 必填 说明
    effectId EffectId 指示马达振动效果的字符串。
  • 返回值:

    类型 说明
    Promise<void> 指示触发振动是否成功。
  • 示例:

    vibrator.vibrate(effectId:EffectId).then(error)=>{
       if(error){
           console.log(“error.code”+error.code+“error.message”+error.message);
       }else{
           Console.log(“Promise returned to indicate a successful vibration.”);
       }
    }
    
    1
    2
    3
    4
    5
    6
    7

vibrate.vibrate

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

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

  • 参数:

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

    vibrator.vibrate(effectId:EffectId,function(error){
       if(error){
           console.log(“error.code”+error.code+“error.message”+error.message);
       }else{
           console.log(“Callback returned to indicate a successful vibration.”);
       }
    })
    
    1
    2
    3
    4
    5
    6
    7

vibrate.stop

stop(stopMode: VibratorStopMode): Promise<void>

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

  • 参数:

    参数名 类型 必填 说明
    stopMode VibratorStopMode 指示马达要停止指定的振动模式。
  • 返回值:

    类型 说明
    Promise<void> 指示停止振动是否成功。
  • 示例:

    vibrator.stop(stopMode:VibratorStopMode).then((error)=>{
       if(error){
           console.log(“error.code”+error.code+“error.message”+error.message);
       }else{
           Console.log(“Promise returned to indicate successful.”);
       }
    })
    
    1
    2
    3
    4
    5
    6
    7

vibrate.stop

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

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

  • 参数:

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

    vibrator.stop(stopMode:VibratorStopMode,function(error){
       if(error){
           console.log(“error.code”+error.code+“error.message”+error.message);
       }else{
           Console.log(“Callback returned to indicate successful.”);
       }
    })
    
    1
    2
    3
    4
    5
    6
    7

EffectId

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

名称 默认值 说明
EFFECT_CLOCK_TIMER "haptic.clock.timer" 调整定时器时振动器的振动效果。

VibratorStopMode

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

名称 默认值 说明
VIBRATOR_STOP_MODE_TIME "time" 停止模式为duration模式的振动。即触发振动时参数类型为number,参数本身为指示振动持续时间的触发方式。
VIBRATOR_STOP_MODE_PRESET "preset" 停止模式为预置EffectId的振动。即触发振动时参数类型为EffectId,参数本身为指示马达振动效果的字符串的触发方式。