diff options
| author | Dentomologist <dentomologist@gmail.com> | 2026-07-08 17:25:54 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-07-08 17:25:54 -0700 |
| commit | 2e07d3b4a8233a19b038424256618d989cdd959b (patch) | |
| tree | 33764746759a66b8f7ec5f3ea2aadc461443f141 /Source/Android/app/src/main | |
| parent | f93f69a1e59e02d31d819db7064c817b479ff83b (diff) | |
| parent | 424269ed4b0fa650c3798ffb4b5c240d51b14b9f (diff) | |
Merge pull request #14702 from JosJuice/android-vibration-usage
Android: Set USAGE_MEDIA for rumble
Diffstat (limited to 'Source/Android/app/src/main')
| -rw-r--r-- | Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/model/ControllerInterface.kt | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/model/ControllerInterface.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/model/ControllerInterface.kt index 71b37ff513..b412b6ef9b 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/model/ControllerInterface.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/model/ControllerInterface.kt @@ -4,10 +4,12 @@ package org.dolphinemu.dolphinemu.features.input.model import android.content.Context import android.hardware.input.InputManager +import android.media.AudioAttributes import android.os.Build import android.os.Handler import android.os.HandlerThread import android.os.Looper +import android.os.VibrationAttributes import android.os.VibrationEffect import android.os.Vibrator import android.os.VibratorManager @@ -158,6 +160,7 @@ object ControllerInterface { return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { DolphinVibratorManagerPassthrough(device.vibratorManager) } else { + @Suppress("DEPRECATION") DolphinVibratorManagerCompat(device.vibrator) } } @@ -172,6 +175,7 @@ object ControllerInterface { return DolphinVibratorManagerPassthrough(vibratorManager) } } + @Suppress("DEPRECATION") val vibrator = DolphinApplication.getAppContext() .getSystemService(Context.VIBRATOR_SERVICE) as Vibrator return DolphinVibratorManagerCompat(vibrator) @@ -180,10 +184,23 @@ object ControllerInterface { @Keep @JvmStatic private fun vibrate(vibrator: Vibrator) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { - vibrator.vibrate(VibrationEffect.createOneShot(100, VibrationEffect.DEFAULT_AMPLITUDE)) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + vibrator.vibrate( + VibrationEffect.createOneShot(100, VibrationEffect.DEFAULT_AMPLITUDE), + VibrationAttributes.Builder().setUsage(VibrationAttributes.USAGE_MEDIA).build() + ) } else { - vibrator.vibrate(100) + val attributes = AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_MEDIA).build() + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + @Suppress("DEPRECATION") + vibrator.vibrate( + VibrationEffect.createOneShot(100, VibrationEffect.DEFAULT_AMPLITUDE), + attributes + ) + } else { + @Suppress("DEPRECATION") + vibrator.vibrate(100, attributes) + } } } |
