2012-06-09 12 views
20

Esiste una cartella come res/drawable per file mp3 o generalmente audio? Se sì, cos'è e come posso accedervi dall'app?Posto giusto per inserire file mp3 in un progetto Android

+0

Le risorse raw non vengono compresse o manipolate in alcun modo quando vengono inserite nell'applicazione, rendendole un modo ideale per archiviare file precompressi come file audio. –

risposta

22

Il posto migliore per mettere tali .mp3 o qualsiasi altro file sarebbero nella cartella assets.

Questi file, una volta memorizzati, diventeranno parte della tua app Android e possono essere letti facilmente. Questo tutorial lo descrive bene.

AssetFileDescriptor afd = getAssets().openFd("AudioFile.mp3"); 
MediaPlayer player = new MediaPlayer(); 
player.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength()); 
player.prepare(); 
player.start(); 

In alternativa è anche possibile memorizzare nella cartella raw e leggerlo direttamente specificando il percorso come cartella crudo. questo può essere giocato come:

int resID=getResources().getIdentifier(fname, "raw", getPackageName()); 
MediaPlayer mediaPlayer=MediaPlayer.create(this,resID); 
+2

Risorse o RAW? fammi sapere una risposta specifica –

+0

Ho seguito l'opzione di asset con un po 'di fortuna. Ho aggiunto un flag a questo codice per evitare di riprodurre l'mp3 ogni volta che si fa clic su un pulsante di riproduzione. –

2

posto nella tua cartella di asset. Preferibilmente tra le attività/raw/myfile.mp3 È possibile accedere utilizzando:

String mp3File = "raw/music.mp3"; 
AssetManager assetMan = getAssets(); 
MediaPlayer media = new MediaPlayer(); 
FileInputStream mp3Stream = assetMan.openFd(mp3File).createInputStream(); 
media.setDataSource(mp3Stream.getFD()); 
media.prepare(); 
media.start(); 
+0

Questo non funziona. Forse beni/dovrebbero essere rimossi dal percorso. –

+0

hai ragione –

2

Ecco alcuni passi si può facilmente seguire.

Step-1: aprire Android Studio con il progetto in cui si desidera aggiungere una clip audio/file multimediale. Step-2: crea una cartella raw. Step-3: aggiungi il file multimediale alla cartella raw semplicemente copialo e incollalo nella cartella raw.

Passaggio 4: qui è stato aggiunto un file multimediale "ring.mp3". Ora apri il file Java dell'attività desiderata, qui stiamo aggiungendo l'audio in MainActivity.

Passaggio 5: aggiungere ulteriormente questo codice.

MediaPlayer ring= MediaPlayer.create(MainActivity.this,R.raw.ring); 
    ring.start(); 

** Passo 6: Ora eseguire l'applicazione e la musica si giocherà quando App inizierà

**

0

si dovrebbe salvare il .mp3 in res/raw. AndroidStudio riconosce la cartella raw. (Al contrario, non riconosce automaticamente una cartella res/assets).

Per riprodurre musica.mp3:

mediaPlayer = MediaPlayer.create(ctx, R.raw.cat_meow); mediaPlayer.start();

Nota il comodo utilizzo di R. sintassi.

Problemi correlati