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);
    }
}
相关推荐
nukix8 分钟前
Android Studio Kotlin 中的方法添加灰色参数提示
android·kotlin·android studio
飞露8 分钟前
android studio clone子分支
android·ide·android studio
吴胜ws9 分钟前
Android Studio 中 build、assemble、assembleDebug 和 assembleRelease 构建 aar 的区别
android·ide·android studio
tangweiguo0305198714 分钟前
Android SwitchButton 使用详解:一个实际项目的完美实践
android
金融数据出海37 分钟前
使用PHP对接东南亚、日本、印度和印度尼西亚股票数据源
android·开发语言·php
南国樗里疾5 小时前
Android 14 解决打开app出现不兼容弹窗的问题
android
IT小码哥丶5 小时前
HarmonyOS实战:自定义时间选择器
android·harmonyos
liulangrenaaa5 小时前
C语言实现android/linux按键模拟
android·linux·c语言
LB21125 小时前
黑马 javaweb Day07 MySQL --DQL(查询)语句
android·数据库·mysql
CYRUS STUDIO5 小时前
FART 自动化脱壳框架简介与脱壳点的选择
android·驱动开发·自动化·逆向·源码阅读·脱壳