Dans ce tuto assez simple je vais développer un client pour lire ses propres mp3. Sous android pour lire des mp3 en ligne, il y a rien de plus facile. D’abord je vais créer une fenêtre avec 3 buttons, un bouton stop,un bouton start et un bouton pause. J’ ajoute également une zone de texte pour afficher les informations sur le titre
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stretchColumns="1">
<TableRow>
<Button android:id="@+id/stop"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Stop"/>
<Button android:id="@+id/start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Start"/>
<Button android:id="@+id/pause"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pause"/>
</TableRow>
</TableLayout>
</LinearLayout> |
La classe pour pourvoir faire du streaming de musique et aussi de la vidéo, est la classe MediaPlayer. Le fonctionnement de cette classe et assez simple. Dans la méthode
setDataSource on passe l’url du fichier, et après j’utilise les méthodes start,stop ,pause qui sont assez explicites.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | public class LecteurStreaming extends Activity {
private MediaPlayer mediaPlayer;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
try{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mediaPlayer=new MediaPlayer();
String urlfichier="http://adresse internet du fichier"
mediaPlayer.setDataSource(urlfichier);
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.prepare();
final TextView texthaut = (TextView) findViewById(R.id.text);
//calcul de la durer du morceau
int iduration = mediaPlayer.getDuration();
int minute = iduration/60000;
int intreste = iduration-minute*60000;
int iseconde= intreste/1000;
String sMetminutezero="";
String sMetminuteseconde="";
if(minute<10)
sMetminutezero="0";
if(iseconde<10)
sMetminuteseconde="0";
//j'affiche le titre suivi du temp de la chanson
String stitre = "titre "+sMetminutezero+minute+":"+sMetminuteseconde+iseconde;
texthaut.setText(stitre);
//mediaPlayer.start();
Button btStart = (Button) findViewById(R.id.start);
Button btStop = (Button) findViewById(R.id.stop);
Button btPause = (Button) findViewById(R.id.pause);
btStart.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
try{
mediaPlayer.start();
}
catch (Exception e) {
texthaut.setText("erreur "+e.getMessage());
}
}
});
btStop.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
try{
mediaPlayer.stop();
mediaPlayer.prepare();
}
catch (Exception e) {
texthaut.setText("erreur "+e.getMessage());
}
}
});
btPause.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
try{
mediaPlayer.pause();
}
catch (Exception e) {
texthaut.setText("erreur "+e.getMessage());
}
}
});
}
catch(Exception ex){
final TextView texthaut = (TextView) findViewById(R.id.text);
texthaut.setText(ex.getMessage());
}
}
} |
Il est temps de mettre à profit les tutoriels d’Android France:
Passez à la vitesse supérieure et investissez quelques dizaines d’euros pour acquérir les connaissances qui vous feront gagner de l’argent avec vos applications rendez-vous sur notre boutique Android-france pour ces formations en vidéo



















02 juillet 2009 à 10 h 54 min
Ces = Ceux là
Ses = Les siens
02 juillet 2009 à 10 h 57 min
@Jérémy : oups corrigé merci
04 juillet 2009 à 21 h 57 min
Super, merci beaucoup !
http://www.digg-france.com/GADGETS/STREAMING-ANDROID-ECOUTER-MUSIQUE-EN-STREAMING-SUR-MOBILES-ANDROID-MP3-EN-STREAMING
14 septembre 2009 à 12 h 54 min
Bonjour.
J’ai un problème lorsque j’utilise ce code.
J’obtiens un beau message d’erreur “Prepare failed.: status=0×1″ au-dessus du lecteur et du coup rien ne fonctionne.
A quoi est-ce dû ?
J’ai un cherché sur le net, dans le group google et apparemment je ne suis pas tout seul à avoir ce problème, mais il y a très peu de réponses.
Merci par avance pour vos réponses.
28 mai 2010 à 20 h 25 min
Bonjour !
J’ai le même problème que Aruna68, et toujours pas plus de solutions…
Je sais pas trop comment m’y prendre car je débutes en développement android…
16 novembre 2010 à 14 h 00 min
dernierement j’ai trouvé un site sympa , je peux télécharger et ecouter toute la musique que je veux . à mon bureau j’arrive à lire les mp3 mais pas chez moi sur http://www.vistamp3.com
Vous pouvez m’aider ?
salutation
05 décembre 2010 à 14 h 16 min
Salut guy,
merci pour ce super tuto, ça m’aide bcp !
Es-ce que tu sais si il peut lire un fichier audio asx ?
Merci,
Igor.
05 décembre 2010 à 14 h 17 min
J’ai fait le tuto comme expliqué et a la fin l’application se ferme toute seule a chaque fois…
07 avril 2011 à 21 h 15 min
hello ,j essaie de faire plus ou moins la meme chose depuis le xperia j’acced a mon serveur je clic sur une musique pas de probleme elle ce met en route en stream sans soucis.mais bon l’idee de cliquer music apres musique me derange.
du coup j’ai crée une playlist en m3u que j’ai mis sur le serveur mais la impossible d’ouvrir cet playlist a chque fois le tel me dit erreur si ta une idee sur le soucis merci d avance