Как заставить воспроизведение / приостановку медиа-кнопки соблюдать состояние, которое я посылаю через mediaSession.setPlaybackState? - PullRequest
0 голосов
/ 02 февраля 2020

Я пытаюсь реализовать следующий поток:

  • Воспроизведение находится в состоянии паузы, а также mediaSession
  • Пользователь нажимает кнопку мультимедиа при воспроизведении (проблема связана с одиночная кнопка паузы воспроизведения), запускающая KEYCODE_MEDIA_PLAY
  • Приложение не запускает воспроизведение и воспроизводит предупреждение с помощью ToneGenerator
  • Пользователь нажимает кнопку мультимедиа при паузе воспроизведения и возобновляет воспроизведение

Однако при повторном нажатии мультимедийной кнопки с паузой воспроизведения она отправляет KEYCODE_MEDIA_PAUSE в 80% случаев вместо KEYCODE_MEDIA_PLAY, хотя я не установил PlaybackStateCompat.STATE_PLAYING и даже пытался установить состояние воспроизведения на PlaybackStateCompat.STATE_PAUSED во второй раз.

Когда это работает - он может работать в течение нескольких итераций, а затем снова начать отправлять неправильные события.

Я тестировал только на Android 9 и только одна гарнитура bt. Я не уверен, что я могу отладить, чтобы увидеть, что происходит не так.

...