Android Vibrator 手机震动

Android Vibrator 手机震动

本篇文章主要讲下手机震动.

1: 检测是否支持震动

java 复制代码
/**
 * @param context
 * @return
 * 是否支持手机震动
 */
public static boolean hasVibrator(Context context){
    Object systemService = context.getSystemService(Context.VIBRATOR_SERVICE);
    return systemService !=null;
}

2: 控制手机震动指定时间

java 复制代码
public static void noticeVibrator(Context context,long time){
    if (!hasVibrator(context)) return;
    Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
    if (vibrator.hasVibrator()){
        vibrator.vibrate(time);
    }
}

这里vibrate(long time) 方法需要申请权限:

java 复制代码
@RequiresPermission(android.Manifest.permission.VIBRATE)

3: 指定震动模式

java 复制代码
/**
 * @param context
 * 指定的模式震动
 */
public static void noticeVibrator2(Context context){
    if (!hasVibrator(context)) return;
    Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
    if (vibrator.hasVibrator()){
        long[] pattern = {0, 1000, 500, 2000}; // 指定震动模式,以毫秒为单位
        int repeat = -1; // -1表示不重复,0表示从pattern的第一个元素开始重复
        vibrator.vibrate(pattern,repeat);
    }
}
相关推荐
alexhilton13 小时前
端侧RAG实战指南
android·kotlin·android jetpack
二流小码农21 小时前
鸿蒙开发:路由组件升级,支持页面一键创建
android·ios·harmonyos
xq95271 天前
Android 手游SDK组件化开发实战指南
android
煤球王子1 天前
学习记录:Android14中的WiFi-wpa_supplicant(1)
android
张小潇1 天前
AOSP15 Input专题InputDispatcher源码分析
android
TT_Close1 天前
【Flutter×鸿蒙】debug 包也要签名,这点和 Android 差远了
android·flutter·harmonyos
Kapaseker1 天前
2026年,我们还该不该学编程?
android·kotlin
雨白2 天前
Android 快捷方式实战指南:静态、动态与固定快捷方式详解
android
hqk2 天前
鸿蒙项目实战:手把手带你实现 WanAndroid 布局与交互
android·前端·harmonyos
LING2 天前
RN容器启动优化实践
android·react native