package co.haive.lib.common.util
import android.app.Activity
import android.app.Service
import android.content.Context
import android.content.Context.VIBRATOR_SERVICE
import android.os.Build
import android.os.Vibrator
import android.os.VibratorManager
object VibrateUtils {
//震动milliseconds毫秒
fun vibrate(context: Context, milliseconds: Long) {
val vib = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
val vibratorManager =
context.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager
vibratorManager.defaultVibrator
} else {
context.getSystemService(VIBRATOR_SERVICE) as Vibrator
}
vib.vibrate(milliseconds)
}
/**
* 以pattern[]方式震动
* @param repeat -1 不重复 0一直震动
*/
fun vibrate(context: Context, pattern: LongArray, repeat: Int) {
val vib = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
val vibratorManager =
context.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager
vibratorManager.defaultVibrator
} else {
context.getSystemService(VIBRATOR_SERVICE) as Vibrator
}
vib.vibrate(pattern, repeat)
}
//取消震动
//取消震动
fun virateCancle(context: Context) {
val vib = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
val vibratorManager =
context.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager
vibratorManager.defaultVibrator
} else {
context.getSystemService(VIBRATOR_SERVICE) as Vibrator
}
try {
vib.cancel()
} catch (e: Exception) {
e.printStackTrace()
}
}
}
Android 震动 适配31
猜你喜欢
转载自blog.csdn.net/mp624183768/article/details/127493980
今日推荐
周排行