Android: Mediaplayer работает в эмуляторе, но не на телефоне

Музыка из моих игр воспроизводится на эмулированном телефоне, но не на моем реальном устройстве (галактика S7).

myMediaPlayer = MediaPlayer.create(getContext(), R.raw.medieval_loop);
myMediaPlayer.setAudioAttributes(audioAttributes);
myMediaPlayer.setVolume(volume,volume);
myMediaPlayer.start();
audioAttributes = new AudioAttributes.Builder()
            .setUsage(AudioAttributes.USAGE_GAME)
            .setFlags(AudioAttributes.FLAG_AUDIBILITY_ENFORCED)
            .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
            .build();

Кому-нибудь приходилось иметь дело с этим раньше?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
11
1

Ответы 1

Хорошо, решение состояло в том, чтобы изменить мои аудиоатрибуты на

audioAttributes2 = new AudioAttributes.Builder()
                .setUsage(AudioAttributes.USAGE_MEDIA)
                .setContentType(AudioAttributes.CONTENT_TYPE_SPEECH)
                .build();

Другие вопросы по теме