Подтвердить что ты не робот

Как играть в аудиофайл в android

У меня есть mp3 файл в моем мобильном телефоне Android, и он позволяет мне xyz.mp3 где-то в моей SD-карте. Я хочу воспроизвести его через свое приложение. Пожалуйста, помогите мне, я понятия не имею об этом.

4b9b3361

Ответ 1

Просто вы можете использовать MediaPlayer и воспроизвести аудиофайл. Проверьте этот приятный пример для воспроизведения аудио:

 public void audioPlayer(String path, String fileName){
    //set up MediaPlayer    
    MediaPlayer mp = new MediaPlayer();

    try {
        mp.setDataSource(path + File.separator + fileName);
        mp.prepare();
        mp.start();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

Ответ 2

@Niranjan. Если вы используете необработанный файл из папки res/raw, то есть читаете файл, хранящийся внутри проекта, мы можем использовать:

mediaplayer.setDataSource(context, Uri.parse("android.resource://urpackagename/res/raw/urmp3name");

Если вам нужно использовать с SD-карты:

 MediaPlayer mediaPlayer = new MediaPlayer();
 File path = android.os.Environment.getExternalStorageDirectory();
 mediaPlayer.setDataSource(path + "urmp3filename");

Смотрите этот связанный вопрос: Проблема MediaPlayer между исходной папкой и sdcard на андроиде

Ответ 3

enter code herepublic class MainActivity extends Activity implements OnClickListener {
Button play;
MediaPlayer mp;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setVolumeControlStream(AudioManager.STREAM_MUSIC);
    play=(Button)findViewById(R.id.button1);
    play.setOnClickListener(this);

}
@Override
public void onClick(View arg0)
{
    mp=MediaPlayer.create(getApplicationContext(),R.raw.song);// the song is a filename which i have pasted inside a folder **raw** created under the **res** folder.//
    mp.start();


}

@Override
protected void onDestroy() {
    mp.release();
    super.onDestroy();
}

}