2010-11-12 35 views
3

Je veux lire un fichier mp3 en utilisant le lecteur Android par défaut. J'ai réussi à faire jouer le fichier mais il joue en arrière-plan. Je veux avoir tous les bons contrôles pour faire une pause, jouer, etc.android lire les fichiers audio avec le lecteur par défaut

Je ne sais pas comment je pourrais faire ça!

Mon code est maintenant quelque chose comme

String link = "http://www.site.com/file.mp3"; 

MediaPlayer mp = new MediaPlayer(); 
mp.setDataSource(link); 
mp.prepare(); 
mp.start(); 

Comment puis-je le faire que lorsque ce fichier commence à jouer pour aller à un autre écran avec le lecteur et tous les bons contrôles?

Merci

Répondre

5

La classe MediaPlayer doit être utilisé lorsque vous souhaitez implémenter votre propre lecteur multimédia. Si vous souhaitez utiliser un lecteur existant, vous devrez lancer l'intention appropriée, par exemple:

Uri uri = Uri.parse("http://www.site.com/file.mp3"); 
Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
startActivity(intent); 

Si l'action particulière ne fonctionne pas, jetez un oeil ici: http://developer.android.com/reference/android/content/Intent.html

+0

Bonjour! Merci beaucoup. Cela fonctionne mais ce n'est pas vraiment ce que je veux. Je voudrais que le fichier s'ouvre dans le lecteur Android par défaut. Je vois mon erreur avec la classe MediaPlayer, mais l'utilisation de la méthode que vous avez décrite ne me donne pas beaucoup de contrôle sur ce qui se passe après le déjeuner. Avez-vous d'autres suggestions? –

+0

Par exemple, je veux être en mesure de revenir en arrière après l'intention déjeuné sans que la chanson soit arrêtée –

+1

C'est en grande partie le lecteur de musique particulier. La plupart des joueurs lancent un service en arrière-plan, qui continue à jouer de la musique, mais pour autant que je sache, il n'y a pas d'interface publique pour accéder à ces services. Vous pouvez jeter un oeil ici http://www.alexc.me/android-music-app-service-currently-playing-song/231/, mais cela utilise une interface non documentée, et très probablement ne fonctionne que pour les appareils fonctionnant à la vanille Version Android –