Streaming de radio en Android

Streaming de radio con Android usando Java

En este tutorial aprenderemos a realizar una aplicación de streaming de radio con android usando el lenguaje de programación Java.
El streaming se utiliza para optimizar la descarga y reproducción de archivos de audio y vídeo que suelen tener un cierto peso.

¿Cómo hacer streaming de radio con android usando Java?

Realizar esta tarea en Android no es nada difícil, para esto vamos a utilizar el objeto MediaPlayer que nos proporciona la API de Android y nos permite manipular en este caso un streaming de música con solo ingresar la URL.
Antes de comenzar a programar es necesario agregar un permiso en el archivo AndroidManifest.xml para que la aplicación se pueda conectar a internet:

<uses-permission android:name="android.permission.INTERNET" >
</uses-permission>

A continuación el código fuente del streaming de radio:

package com.programacionextrema.radio;

import java.io.IOException;

import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnBufferingUpdateListener;
import android.media.MediaPlayer.OnPreparedListener;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;

public class MainActivity extends Activity {

	private MediaPlayer player;
	private String url = "Aquí va la URL";

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		// Inicializo el objeto MediaPlayer
		initializeMediaPlayer();

		// Inicio el streaming de radio
		startPlaying();
	}

	private void initializeMediaPlayer() {
		player = new MediaPlayer();

		player.setOnBufferingUpdateListener(new OnBufferingUpdateListener() {

			public void onBufferingUpdate(MediaPlayer mp, int percent) {
				Log.i("Buffering", "" + percent);
			}
		});
	}

	public void startPlaying() {

		try {

			Toast.makeText(getApplicationContext(),
					"Conectando con la radio, espere unos segundos...",
					Toast.LENGTH_LONG).show();

			player.reset();
			player.setDataSource(url);
			player.setAudioStreamType(AudioManager.STREAM_MUSIC);

			player.setOnPreparedListener(new OnPreparedListener() {

				public void onPrepared(MediaPlayer mp) {

					player.start();

				}
			});

			player.prepareAsync();

		} catch (IllegalArgumentException | SecurityException
				| IllegalStateException | IOException e) {
			Toast.makeText(getApplicationContext(),
					"Error al conectar con la radio", Toast.LENGTH_LONG).show();
		}

	}

}

Al ejecutar el código anterior en Android se reproducirá automáticamente la radio. Si queremos agregar una barra de control para manipular el audio podemos seguir el siguiente tutorial: http://programacionextrema.com/2015/10/29/streaming-de-radio-con-android-usando-java-parte-2

Bueno hemos llegado al final de este tutorial, ante cualquier problema no duden en dejar un comentario.

Compartilo en
Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInPin on PinterestEmail this to someone

AboutJosé Di Meglio

Apasionado de la tecnología y programación. Aportando información gratuita sobre el mundo de la informática.

6 comments

  1. Hola, disculpá, cuando introduzco el URL no me deja compilar la aplicación, uso el Android Studio, me podrías dar un ejemplo de como debe de ir esa URL, ya introduje la ip y aun así no me deja, o seria algo como (examplemyradio.com)?
    La verdad no entiendo como, de antemano gracias.

    1. Hola Miguel, por lo que entiendo estas tratando de ingresar una URL de forma incorrecta. Es importante para que compile que esa URL esté dentro de las commillas (lo cual significa que es un String). Por ejemplo “http://example.com”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *