Проблема управления громкости JetPack Media3 на Samsung S24 (Android 14)Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Проблема управления громкости JetPack Media3 на Samsung S24 (Android 14)

Сообщение Anonymous »

В настоящее время я разрабатываю пользовательское приложение для сигнализации с использованием библиотеки Android JetPack Media3, в частности, версия 1.4.1. Я заметил, что когда дело доходит до управления громкостью звукового потока, я могу отрегулировать громкость на все мои доступные физические устройства и эмуляторы - , кроме на моем Samsung S24. На этом конкретном устройстве я не могу изменить громкость в любой форме, будь то с помощью программного управления или с помощью кнопок физического громкости. Трекер:
https://issuetracker.google.com/issues/363916146
Эта проблема является основным блокатором для моей разработки, и я подумываю о возвращении к Legacy MediaPlayer и Abanding Media3 вообще. Любые предложения были бы очень оценены. Предоставленный Media3.mediasessionservice Пример кода на устройстве Samsung S24. (См. https://developer.android.com/media/med ... d-playback)ски Управление громкостью или программно в приложении (используя Audiomanager )

[*] Наблюдайте за тем, чтобы корректировки громкости не влияют на носитель Воспроизведение


ожидаемое поведение
Регулировка громкости Сделано через системные элементы управления или в приложении, должно быть отражено в томе воспроизведения среды. не влияет на громкость воспроизведения медиа на Устройство Samsung S24.
Информация об устройстве
  • Устройство: Samsung S24
  • ОС: Android 14 < /li>
    Одна версия пользовательского интерфейса: 6.1 < /li>
    < /ul>
    Дополнительные Информация < /strong> < /p>

    Проблема специфична для устройства Samsung S24 < /li>
    Кодовые функции правильно на других протестированных Устройства (Physical Moto G04S, эмулированный Pixel 8 API 34 & 35)
  • Соответствующие фрагменты кода включали в себя управление громкостью и настройка атрибутов Audio
  • Для usage_alarm < /code> в пользовательском интерфейсе не отображается регулятор громкости для «тревоги» на Samsung S24, в то время как все остальные устройства показывают это < /li>

    Код: Выделить всё

    PlaybackSessionService.onStartCommand
    triggers playerbackground.play () и работает в качестве службы переднего плана (запускаемой приемником трансляции тревоги) (контроль объема возможна и показано)
фрагменты кода [/b] (уменьшен на не деко Настройки) < /p>

Код: Выделить всё

import androidx.media3.common.AudioAttributes as Media3AudioAttributes;

class PlaybackSessionService : MediaSessionService() {

// ... (Relevant parts of the provided code)

override fun onCreate() {
super.onCreate()

// Setting audio attributes
val musicAudioAttributes = Media3AudioAttributes.Builder()
.setUsage(C.USAGE_MEDIA) // or C.USAGE_ALARM, depending on use case
.setContentType(C.AUDIO_CONTENT_TYPE_MUSIC)
.setAllowedCapturePolicy(C.ALLOW_CAPTURE_BY_NONE)
.setFlags(C.FLAG_AUDIBILITY_ENFORCED)
.build()

playerBackground = ExoPlayer.Builder(this)
.setDeviceVolumeControlEnabled(true)
.setAudioAttributes(musicAudioAttributes, /* handleAudioFocus= */ false)
.build()

// ... (Volume adjustment attempts)

playerBackground.volume = 0.1f

if (audioManager.isVolumeFixed()) {
Log.e("PlaybackService", "Volume is fixed") // not executed
}

audioManager.setStreamVolume(
AudioManager.STREAM_MUSIC, // or C.STREAM_ALARM, depending on use case
(audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC) // or C.STREAM_ALARM, depending on use case
* defaultAlarmVolumeLevel).toInt(),
0 //FLAG_SHOW_UI also no effect
)

// add session to service explicitly, otherwise notification is not shown
addSession(mediaSession!!)
} // end of onCreate

// ...
}
tl; dr
Использование примера примера Media3 по умолчанию 3 (фоновая игра MediaSession, https://developer.android .com/media/media3/session/founal-playback), управление громкостью и настройка тома программно не работает, как и ожидалось на устройстве Samsung S24 (Android 14, одна версия пользовательского интерфейса 6.1). Функции управления громкостью правильно на других тестируемых устройствах (физический Moto G04S, эмулированный Pixel 8 API 34 и 35).

Подробнее здесь: https://stackoverflow.com/questions/789 ... android-14
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»