Я хочу воспроизводить аудио с живого сервера. Я не хочу загружать эти аудиофайлы. Формат этих файлов - mp3.working на android java.Как играть в аудиофайл Mp3 с сервера
ответ
Попробуйте сделать это:
MediaPlayer mp = new MediaPlayer(/*Your-Context*/);
mp.setDataSource(/*MP3 file's Url*/);
mp.setOnPreparedListener(new OnPreparedListener(){
onPrepared(MediaPlayer mp)
{
mp.start();
}
});
mp.prepareAsync();
try {
MediaPlayer player = new MediaPlayer();
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.setDataSource("http://xty/MRESC/images/test/xy.mp3");
player.prepare();
player.start();
} catch (Exception e) {
// TODO: handle exception
}
@ dipali.Спасибо очень сильно, что ваш код работает отлично, но когда во время воспроизведения звуковой кнопки воспроизведения звука снова нажата, принудительно закрывается. –
@dipali У меня появилось предупреждение: активность не началась, ее текущая задача была перенесена на передний план. Можешь мне объяснить? – iCrazybest
Предполагая, что на ресурсе uri установлен правильный заголовок, будет ли файл кэшироваться в ОЗУ, или же звуковой файл загружается каждый раз, когда мы его воспроизводим? – GA1
Если вы просто хотите, чтобы открыть поток в музыкальном проигрывателе по умолчанию в (так что вам не придется иметь дело с исполнителями кнопкой игрока, продолжая работу в фон и т.д.), вы можете использовать Intent
:
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("http://example.com/file.mp3"), "audio/mp3");
startActivity(intent);
Если вы не в настоящее время в деятельности, использовать getBaseContext().startActivity(intent)
, или что-то еще, так что вы можете позвонить startActivity()
на Context
объект.
как мы можем остановить звук во время его воспроизведения –
Чтобы остановить: mp.stop(); и приостановить: mp.pause(); –
Как я могу запустить онлайн-mp3-файл в службе mediaplayer – Harsha