Фоновое аудио останавливается для Android версий ниже Oreo - PullRequest
0 голосов
/ 21 февраля 2020
videoView = dialog.findViewById(R.id.videoView1);
    String videoPath = "android.resource://" + mContext.getPackageName() + "/" + R.raw.animation;

    if (isOSVersionAboveOreo()) {
        videoView.setAudioFocusRequest(AudioManager.AUDIOFOCUS_NONE);
    } else {
        AudioManager am = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
        am.requestAudioFocus(null, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN);
    }

    videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mp) {
            mp.setLooping(true);
        }
    });
    videoView.setVideoURI(Uri.parse(videoPath));

Приведенный выше код прекрасно работает для Android Oreo и выше. Только что протестировано на Lollipop. И все же он приостанавливает фоновую музыку c, пока отображается это видео. Да, я видел, что setAudioFocusRequest предназначен для oreo и выше. вот почему я добавил еще условие условия. Но это не работает.

...