android - 'VIBRATOR_SERVICE : String' is deprecated for API 31

标签 android deprecated vibration android-api-31

正如标题所说,我升级到 API 31。我有一个执行振动的功能,但在行

val vib = this.getSystemService(Context.VIBRATOR_SERVICE) as Vibrator
振动器_服务 现在显示为已弃用。我该如何更换它?或者至少,API 31 及更高版本的现代解决方案是什么?
编辑:正如 Joachim Sauer 所写,替代方案是 VibrationManager。我现在需要的是使用 VibrationManager 的等效代码行。

最佳答案

val vib = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
    val vibratorManager =
        getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager
    vibratorManager.defaultVibrator
} else {
    @Suppress("DEPRECATION")
    getSystemService(VIBRATOR_SERVICE) as Vibrator
}

关于android - 'VIBRATOR_SERVICE : String' is deprecated for API 31,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68466095/

相关文章:

Android BadParcelableException(Parcelable 协议(protocol)需要一个名为 CREATOR 的 Parcelable.Creator 对象)只有签名的 apk

android - Google Sign In 在 iOS 上不返回姓名、图片、名字、姓氏,但在 Android 上可用

ios - Phonegap iOS 振动持续时间解决方法

android - 当用户连接到互联网时,如何通知用户更新或评价应用程序?

java - camera.setPreviewDisplay(SurfaceHolder) 上的异常

java - 如何更改 Java 9 中的包装类初始化?

xcode - 默认情况下,对于iOS4项目的XCode中已弃用的代码是否存在编译警告或错误?

objective-c - Xcode/iOS——摆脱特定常量的弃用警告?

ios - Flutter 包振动 0.0.4 在 iOS 中不起作用

java-me - 使用 j2me 的游戏中的诺基亚设备振动