Servicio MediaPlayer Android

Soy nuevo en android. Estoy creando el servicio para el reproductor de medios de modo que pueda continuar a jugar la canción incluso si cierra la aplicación. He creado la actividad para el jugador de medios y está teniendo toda la funcionalidad como juego, pausa, siguiente, anterior, seekbar y también incluye oncompletionlistener. Todo funciona excelente. Pero ahora quiero que todo debe ser administrado por el servicio.

He creado la clase MyService:

public class MyService extends Service { public static MediaPlayer mp; @Override public IBinder onBind(Intent intent) { // TODO Auto-generated method stub return null; } @Override public void onCreate() { mp = new MediaPlayer(); } @Override public int onStartCommand(Intent intent, int flags, int startId) { return START_STICKY; } 

Pero en mi actividad de jugador he creado ArrayList para la lista de canciones de la que estoy tomando currentsongIndex ya través de él estoy manteniendo todas las funcionalidades como siguiente, anterior y todo .. Ahora en servicio ¿cómo puedo obtener lista de canciones que también se requiere en mi actividad? ? ¿Dónde debo crear el objeto MediaPlayer en servicio o actividad?

Para MediaPlayer he reffered http://www.androidhive.info/2012/03/android-building-audio-player-tutorial/ . Para mi código de reproductor multimedia puede consultar este sitio. Gracias. Pleaze claro mi duda. Estoy muy confundido. Contestame pronto

Estás en el camino correcto. Me he adaptado de las muestras de SDK; Esto es cómo lo hago y funciona muy bien. Desde su ArrayList (en su actividad NO desde el Servicio) llame al

 onListItemClick 

E iniciar una intención que inicie el servicio de música:

 startService(new Intent(MusicService.ACTION_PLAY)); 

En su manifiesto necesitará agregar:

  <intent-filter> <action android:name="com.blah.blah.action.PLAY" /> <xxx xxx> </intent-filter> 

Y por supuesto en su Servicio de Música usted necesita recibir el Propósito:

 public int onStartCommand(Intent intent, int flags, int startId) { String action = intent.getAction(); if (action.equals(ACTION_PLAY)) processPlayRequest(); } 

Asegúrese de agregar Intents para omitir, rebobinar, detener, etc. Avisarme si esto ayuda.

Conseguir que la aplicación se ejecute en segundo plano debe ser atendida por el "Servicio" en sí.
Intente seguir este ejemplo http://www.vogella.com/articles/AndroidServices/article.html
Un servicio está diseñado para trabajar en segundo plano.

¡Pasé exactamente lo mismo! Es un largo camino para desarrollar incluso una gran aplicación de reproductor de mp3. La respuesta es larga.

Aquí hay algunos recursos que realmente me ayudaron. Android tiene un artículo sobre esta misma cosa en su desarrollador docs:

http://developer.android.com/guide/components/services.html

Preste atención a lo que dice en la parte inferior de este largo artículo sobre servicios vinculados y corriendo en primer plano.

Además, el manejo del estado del jugador es lo que me causó más dolores de cabeza.

También querrás echar un vistazo a los subprocesos porque el desove de ese nuevo servicio seguirá ejecutando todo en el subproceso principal de la interfaz de usuario, suena loco pero cierto. Echa un vistazo a la ExecutorService para la gestión de grupos de hilos. Ojalá pudiera decirte que era más fácil.

Desafortunadamente la mayor parte de mi entrenamiento formal de toda la web, pero con los servicios de Android viene de un sitio pagado:

http://www.pluralsight.com/training/Courses/TableOfContents/android-services

Es un buen recurso para todos los programadores, creo, pero tiene grandes secciones sobre muchos aspectos de la programación de Android que sólo se cubren brevemente en otros sitios de tutorial.

Los recursos en Vogella son buenos también, mencionado arriba.

  • ¿Está garantizado un servicio android para llamar a onDestroy ()?
  • ¿Cómo comprobar es la aplicación en primer plano de servicio?
  • Puede AlarmManager (alarm.setRepeating) trabajo en caso de reinicio del teléfono - Android
  • Uso de Job Scheduler en la API de Android <21
  • ¿Cómo registrar un servicio de reconocimiento de voz personalizado?
  • Android verificar el estado WIFI (desconectado o el usuario ha cambiado WIFI) ¿Cómo FLAG?
  • Android PendingIntent Extra
  • BroadcastReceiver cuando se cambia el estado de la red wifi o 3g
  • Vibrar en la notificación push
  • El servicio no se detiene incluso después de que el método onDestroy se llama en Android
  • Android: tener un servicio que se ejecuta todos los días a las 4 de la mañana
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.