Как играть в вебм в Android .Media.Mediaplayer? (ошибка (1, -2147483648)) - PullRequest
0 голосов
/ 10 января 2020

Я хочу передавать потоковое аудио (opus) в мое приложение Xamarin Android, но я продолжаю получать UNKNOWN_ERROR, подготавливая плеер. Мой код выглядит так:

    public class AndroidAudioPlayerHelper : AudioPlayerHelper {
        private readonly Media Player player;

        public AndroidAudioPlayerHelper() => player = new MediaPlayer();

        private void PlayNew() {
            player.Prepared += (sender, e) => {
                                   player.Start();
                               };
            player.PrepareAsync();
        }

        public override void PlayStream(string url) {
            player.SetDataSource(url);
            PlayNew();
        }


    }

Мой URL выглядит как http://localhost:9001/api/v1/song/stream/00000000000000000000000000000000. И все работает нормально, когда я указываю на mp3-файл или использую свое UWP-приложение.

Я уже пытался установить AudioAttributes, но он тоже не работал.

1 Ответ

2 голосов
/ 10 января 2020

Если вы используете более новую версию Android, ваш ресурс должен быть ресурсом https или разрешать небезопасные соединения в манифесте.

Попробуйте добавить: android:usesCleartextTraffic="true" к вашему Application узел в вашем файле AndroidManifest. xml.

Предпочтительно, чтобы он был отключен для сборок релиза, если у вас правильно настроенный сервер.

...