Я видел довольно много сообщений, задающих этот вопрос на SO, но, похоже, не существует окончательного ответа (или, по крайней мере, ответа, который мне нравится!)
У меня есть контент, защищенный за базовым auth (имя пользователя/пароль). Я могу загрузить его с помощью различных загрузок HTTP-загрузки, но для жизни я не могу разобраться, как сообщить медиа-плееру о его потоке (и обеспечить аутентификацию). Я видел одно сообщение, которое предположило, что это невозможно, так как MediaPlayer - это весь собственный код и не похоже на Authenticator.
Есть много примеров того, как сначала загружать в кешированную копию, а затем воспроизводить ее, но.... Такого рода отстой (и файлы, возможно, 100 МБ). Я видел по крайней мере одно предложение загрузить его в малейших кусках, а затем начать и остановить воспроизведение (перенаправление на новый файл), но это отстойно, так как там (я полагаю) будет заикаться (я не пробовал, хотя )
Лучшая идея, которую я имею на этом этапе, - начать загрузку в кэш файл, а затем, когда она "достаточно полно", начнет воспроизведение, пока я продолжаю заполнять файл... Я надеюсь, что это сработает (но опять же, не пробовал).
Я пропустил что-то очевидное? Это так больно, что все различные части почти работают, и я сам убедился в том, что должен существовать способ изнасиловать защищенный контент (или использовать уже установленный и квалифицированный InputStream), но он не выглядит радостью.
BTW Я парень Mac/iPhone и новичок на Android, поэтому я все еще боюсь немного обучения Java... Извините, если я упустил что-то очевидное.