1. 获取 Vibrator 实例:
Vibrator vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
2. 检查设备是否支持振动:
if (vibrator.hasVibrator()) {
// 设备支持振动
} else {
// 设备不支持振动
}
在使用振动功能之前,最好检查一下设备是否支持振动。
3. 振动设备:
// 振动 1000 毫秒
if (Build.VERSION.SDK_INT >= 26) {
vibrator.vibrate(VibrationEffect.createOneShot(1000, VibrationEffect.DEFAULT_AMPLITUDE));
} else {
// 适配 Android 25 及以下版本
vibrator.vibrate(1000);
}
上述代码演示了如何让设备振动 1000 毫秒。在 Android 26(Oreo)及以上版本,建议使用 VibrationEffect 类创建振动效果,以提供更灵活的振动控制。
4. 指定振动模式:
long[] pattern = {0, 100, 200, 300}; // 振动和静止交替的模式,单位为毫秒
if (Build.VERSION.SDK_INT >= 26) {
vibrator.vibrate(VibrationEffect.createWaveform(pattern, -1));
} else {
// 适配 Android 25 及以下版本
vibrator.vibrate(pattern, -1);
}
上述代码演示了如何使用振动模式,其中 pattern 数组定义了振动和静止交替的时间间隔。最后的参数 -1 表示只播放一次,可以指定其他值来控制振动的重复次数。
5. 取消振动:
vibrator.cancel();
调用 cancel 方法可以取消当前正在进行的振动。
请注意,振动功能需要在 AndroidManifest.xml 文件中声明权限:
<uses-permission android:name="android.permission.VIBRATE" />
在使用振动功能时,还需要注意用户体验,确保在合适的场景和时机使用振动功能。振动是一种用于提醒用户或传达信息的有力方式,但不宜滥用。
转载请注明出处:http://www.zyzy.cn/article/detail/15245/Android