1

我的 Android 项目的原始文件夹中有一些音频文件。我希望通过 Android 的默认音乐播放器播放这些音频文件。有人可以分享一些示例代码片段来解释该过程。

4

5 回答 5

1

我试过这段代码: -

button.setOnClickListener(new OnClickListener() 
{

@Override
public void onClick(View v) 
{
Uri uri = Uri.parse("R.raw.fashion.mp3");//the audio file
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent); 

}
});

但是当我运行这段代码时;应用程序崩溃并且 LogCat 显示:“ActivityNotFoundException”...没有找到处理意图的活动。

于 2013-01-19T13:54:02.963 回答
1

首先声明MediaPlayer对象:

MediaPlayer mSoundPlayer;

添加此功能:

//Play music
    public void playSound(int id){
            try{
                mSoundPlayer = MediaPlayer.create(mContext, id);
                mSoundPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                    @Override
                    public void onPrepared(MediaPlayer arg0) {
                        mSoundPlayer.start();

                    }

                });
                mSoundPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener () {

                    @Override
                    public void onCompletion(MediaPlayer mp) {
                        // TODO Auto-generated method stub
                        mSoundPlayer.release();
                    }});
            }
            catch (Exception e) {
                // TODO: handle exception
                Log.v("Sound Exception","Sound Exception = "+e.getMessage());
            }
    }

用这个打电话:

playSound(R.raw.sound1);

发布将是一个好习惯MediaPlayer

    @Override
    public void onPause(){
        super.onPause();
        if(mSoundPlayer!=null)
            mSoundPlayer.release();
    }

谢谢。

于 2013-01-19T09:07:14.147 回答
1

这是示例代码片段...

用于在 android 中播放音频文件

播放音频

public void splashPlayer() {
 VideoView videoHolder = new VideoView(this);
 setContentView(videoHolder);
 Uri video = Uri.parse("android.resource://" + getPackageName() + "/"
    + R.raw.splash);
 videoHolder.setVideoURI(video);
 videoHolder.setOnCompletionListener(new OnCompletionListener() {
  public void onCompletion(MediaPlayer mp) {
   jumpMain(); //jump to the next Activity
  }
 });
 videoHolder.start();
}

对于完整的教程去这个

于 2013-01-19T09:13:06.733 回答
1
Intent intent = new Intent(android.content.Intent.ACTION_VIEW);

Uri data = Uri.parse("file://"+Environment.getExternalStorageDirectory()
        .getAbsolutePath()+"/" + fileName);
String type = "audio/mp3";
intent.setDataAndType(data, type);
startActivity(intent);

fileName是您的音频的名称SDCard

于 2013-01-19T09:00:41.543 回答
-1

试试这个可能会有所帮助。

Uri data = Uri.parse("file://"+Environment.getExternalStorageDirectory()
                .getAbsolutePath()+"/" + audioName);
        Intent intent = new Intent(android.content.Intent.ACTION_VIEW, data);

        String type = "audio/mp3";
        intent.setDataAndType(data, type);
        startActivity(intent);
于 2013-03-28T07:03:23.910 回答