fun vibrate(activity: Activity?, duration: Long = 100L) {
try {
val mActivity = activity.getWeakRefActivity() ?: return
val vib = mActivity.getSystemService(Service.VIBRATOR_SERVICE) as? Vibrator ?: return
if (!vib.hasVibrator()) {
return
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
vib.vibrate(
VibrationEffect.createOneShot(
duration,
VibrationEffect.DEFAULT_AMPLITUDE
)
)
} else {
vib.vibrate(duration)
}
} catch (e: Exception) {
}
}
其中,duration是表示持续时间。