lord_ure Posté(e) 13 avril 2010 Share Posté(e) 13 avril 2010 Salut tout le monde, je suis en train de coder une nouvelle activité où je dois lancer un mp3. Apparemment le code fonctionne mais je n'ai aucun son quand je lance l'émulateur. J'ai essayé de mettre l'option -useaudio dans netbeans, mais lorsque je la mets l'émulateur ne se lance plus. Voici mon code : /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package org.me.quizzsound; import android.app.Activity; import android.content.res.Resources; import android.media.MediaPlayer; import android.net.Uri; import android.os.Bundle; import android.widget.LinearLayout; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.net.URL; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author YAK */ public class MainActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.quizzsound); LinearLayout l = (LinearLayout) findViewById(R.id.linearlayout); MediaPlayer mp = new MediaPlayer(); String path = "res"+File.separator+"raw"+File.separator+"assassodomie"; try { File file = new File(path); FileInputStream fis = new FileInputStream(file); mp.setDataSource(fis.getFD()); // mp = MediaPlayer.create(this, R.raw.assassodomie); mp.prepare(); mp.start(); } catch (IOException ex) { Logger.getLogger(MainActivity.class.getName()).log(Level.SEVERE, null, ex); } catch (IllegalArgumentException ex) { Logger.getLogger(MainActivity.class.getName()).log(Level.SEVERE, null, ex); } catch (IllegalStateException ex) { Logger.getLogger(MainActivity.class.getName()).log(Level.SEVERE, null, ex); } } } J'ai beau chercher, je ne vois pas où est le problème, avez vous une idée? +++ Lien vers le commentaire Partager sur d’autres sites More sharing options...
ADNFX Mobile Posté(e) 13 avril 2010 Share Posté(e) 13 avril 2010 Dans la barre de menu d'Eclipse: Run > Run configurations > sur la droite tu as un menu en onglet "Android, "Target" et "Common" > Target > tout en bas en dessous des deux cases à cocher tu as Additional Emulator Command Line Options > tu écris "-audio winaudio" > Apply > Run Enfin ça marche sur Windows XP .... je sais que sur Linux y'a un autre truc je crois. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lord_ure Posté(e) 13 avril 2010 Auteur Share Posté(e) 13 avril 2010 Salut, j'ai mis l'option que tu m'a dite sous netbeans, et il arrive à lancer l'émulateur, mais je n'ai toujours aucun son. Est-ce que ça ne pourrait pas être un pb de windows parce que l'émulateur apparait dans mon mixeurs windows, c donc qu'il voit que l'émulateur essaie de lire qq chose non? ++ et merci d'avoir répondu. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lord_ure Posté(e) 13 avril 2010 Auteur Share Posté(e) 13 avril 2010 En fait, je viens de voir que ce n'est peut-être pas un problème de son mais de fichier. En effet, je viens de voir avec le débugger qu'en fait j'ai un FileNotFoundException, j'ai essayé en mettant R.raw.assassodomie mais àa ne foncitponne pas non plus. je code sous windows et le pb est que lorsque je mets le path j'ai un / qui se mets devant, ce qui rends invalide mon path. Par contre je ne comprends pas qu'en mettant R.raw.assassodomie, j'ai tjrs un FileNotFoundException. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lord_ure Posté(e) 15 avril 2010 Auteur Share Posté(e) 15 avril 2010 Bon, je viens de reprendre monde code à 0, depuis le tuto que j'ai trouvé là : http://www.anddev.org/video-tut_-_playing_mediamp3_on_the_emulator-t156.html J'ai appliqué exactement le même code, même dossier pour mon fichier et tout et tout. Et je m'aperçois que j'ai un Resources$NotFoundException quand je fais appelle à create. Il ne trouve pas mon fichier son, l'exception levée est : File NotFoundException "File res/raw/assassodomie.mp3 from drawable resource ID #0x7f030000" Je ne comprends pas comment il peut ne pas trouver mon fichier. Ce qui est bizarre je trouve c'est qu'il soit écrit : "from DRAWABLE resource", c'est normal????? Voici mon code : /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package org.me.quizzsound; import android.app.Activity; import android.content.res.Resources; import android.media.MediaPlayer; import android.media.MediaPlayer.OnCompletionListener; import android.net.Uri; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.LinearLayout; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author YAK */ public class MusicPlayer extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.quizzsound); Button cmd_play = (Button) this.findViewById(R.id.launchMedia); cmd_play.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { MediaPlayer mp = null; try { mp = MediaPlayer.create(MusicPlayer.this, R.raw.assassodomie); } catch(Exception e) { int g = 0; } try { mp.prepare(); } catch (IOException ex) { Logger.getLogger(MusicPlayer.class.getName()).log(Level.SEVERE, null, ex); } catch (IllegalStateException ex) { Logger.getLogger(MusicPlayer.class.getName()).log(Level.SEVERE, null, ex); } mp.start(); // i.e. react on the end of the music-file: mp.setOnCompletionListener(new OnCompletionListener() { // @Override public void onCompletion(MediaPlayer arg0) { // File has ended !!! Wink } }); } }); } } ++ Lien vers le commentaire Partager sur d’autres sites More sharing options...
dawadam Posté(e) 7 décembre 2010 Share Posté(e) 7 décembre 2010 Salut J'ai exactement le même problème, Resources$NotFoundException. Cela viendrait-il d'un défaut à la compilation/configuration sous NetBeans ? :emo_im_undecided: En tout cas surement pas des fichiers, qui sont lisibles en utilisant une URI. Affaire à suivre, je n'ai pas encore trouvé de solution sur d'autres forums. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.