Webmaster Workers utiliza cookies. Lea nuestra Política de Privacidad para obtener más información. Para eliminar este mensaje, haga clic en el siguiente botón: Acepto el uso de cookies


25 - Reproducción de audio (archivo contenido en una tarjeta



El objetivo de este concepto es acceder a un archivo mp3 almacenado en la tarjeta SD de nuestro equipo (tener en cuenta que esto solo funciona con un equipo que dispone la capacidad de tarjeta SD) Debemos utilizar un emulador que tenga configurado tarjeta SD.


Problema:


Disponer un botón con la etiqueta: "gato", luego cuando se presione reproducir el archivo de audio respectivo. El archivo de sonido almacenarlo en la tarjeta SD.


Luego de crear el proyecto (Proyecto027) debemos ejecutar la aplicación para poder acceder a la tarjeta SD que crea el emulador Android.

Una vez que se este ejecutando la aplicación (no importa que todavía no hemos implementado su funcionalidad) procedemos a abrir la ventana "Android Device Monitor". Seleccionamos del menú de opciones de Tools->Android->Android Device Monitor.




En la carpeta storage/sdcard debemos subir el archivo mp3 (debemos seleccionar esta carpeta con el mouse)
Esto lo hacemos mediante un botón que aparece en la parte derecha de esta ventana "Push a file onto device", luego de esto tenemos el archivo montado en la tarjeta SD:


play mp3 android tarjeta SD

Luego de subirlo debe aparecer dentro de la lista de archivos que tiene la tarjeta SD:


play mp3 android tarjeta SD


Ahora implementemos la interfaz de nuestra aplicación (un solo botón) que cuando se presione llame al método ejecutar:


play mp3 android tarjeta SD


El código fuente es:



package ar.com.tutorialesya.proyecto027;

import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Environment;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;


public class MainActivity extends ActionBarActivity {

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


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);
}

public void ejecutar(View v) {
Uri datos = Uri.parse(Environment.getExternalStorageDirectory()
.getPath() + "/gato.mp3");
MediaPlayer mp = MediaPlayer.create(this, datos);
mp.start();
}

}

Creamos un objeto de la clase Uri llamando al método parse donde indicamos el path y nombre del archivo a recuperar:



Uri datos = Uri.parse(Environment.getExternalStorageDirectory().getPath() +"/gato.mp3");

Creamos el objeto de la clase MediaPlayer pasando ahora la referencia del objeto de la clase Uri:



MediaPlayer mp=MediaPlayer.create(this, datos);

Iniciamos la reproducción del mp3:



mp.start();


Otro paso importante antes de ejecutar la aplicación es agregar el permiso de leer la tarjeta SD, para ello modificamos el archivo AndroidManifest.xml agregando este permiso:


play mp3 android tarjeta SD




Este proyecto lo puede descargar en un zip desde este enlace:
proyecto027.zip

Recordar que para ejecutar este proyecto se debe subir un archivo mp3 llamado "gato.mp3" a la tarjeta SD.







Opciones
Estadísticas
Creado 01.01.1970 a las 00:00 hs
Categoría Android Studio

  • Medallas
  • 0
    Favoritos
  • 9653
    Visitas
  • 0
    Puntos
  • 0
    Seguidores
Comentarios
0
Cargando comentarios espera un momento...
No tienes permisos para comentar.

Para poder comentar necesitas estar Registrado. O.. ya tienes usuario? Logueate!
Autor del post
Ver perfil de Administrador Administrador
Hombre Administrador  Mensaje
43 1,352 1
Medallas
No tiene medallas
Tags
Posts relacionados