OpenHarmony/HarmonyOS震动模块的使用

2023-02-23 11:37:01 浏览数 (1)

@ohos.vibrator (振动)

作者:坚果,公众号:”大前端之旅“,哔哩哔哩,OpenHarmony布道师,OpenHarmony校源行开源大使,51CTO博客专家博主,阿里云博客专家。

导入模块

使用的时候,需要先导入对应的模块

代码语言:javascript复制
import vibrator from '@ohos.vibrator';

添加权限

然后需要添加权限

FA

代码语言:javascript复制
"reqPermissions": [
  {
    "name": "ohos.permission.VIBRATE"
  }

Stage

代码语言:javascript复制
"requestPermissions": [
  {
   "name": "ohos.permission.VIBRATE"
  }
]

接下来我们来看后面的内容

vibrator.vibrate

vibrate(duration: number): Promise

按照指定持续时间触发马达振动。需要添加权限

参数:

参数名

类型

必填

说明

duration

number

指示马达振动的持续时间。

返回值:

类型

说明

Promise

指示触发振动是否成功。

示例:

代码语言:javascript复制
import vibrator from '@ohos.vibrator';
@Entry
@Component
struct VibPage {
  @State message: string = 'Hello '

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold).onClick(()=>{
          vibrator.vibrate(1000).then(()=>{
            console.log("Promise returned to indicate a successful vibration.");
          }, (error)=>{
            console.log("error.code" error.code "error.message" error.message);
          });
        })
      }
      .width('100%')
    }
    .height('100%')
  }
}

需要注意的是在HarmonyOS应用中,ApI8的

接口声明文件编写错误,需要手动修改下SDK目录下接口声明文件,文件路径Sdkopenharmony8etsapi@ohos.vibrator.d.ts 修改vibrate方法顺序为 function vibrate(duration: number): Promise; function vibrate(duration: number, callback?: AsyncCallback): void;

0 人点赞