in lib/utils/vibration_util.dart [34:49]
static void vibrate({int duration = defaultVibrationDuration}) async {
try {
final now = DateTime.now();
// 防抖机制:控制两次振动之间的最小间隔
if (_lastVibrationTime == null ||
now.difference(_lastVibrationTime!) >=
const Duration(milliseconds: defaultMinVibrationInterval)) {
// 使用 HapticFeedback 模拟振动
await _performHapticFeedback(duration);
_lastVibrationTime = now;
}
} catch (e) {
loge("Failed to execute haptic feedback: $e");
}
}