播放没有MediaPlayer.Create从原始文件夹(而不是流或SD卡)的声音剪辑

问题描述 投票:0回答:1

(Android)我正在制作一个带有几个按钮的应用程序,每个按钮都有一个与之关联的短声道剪辑。他们有自己的OnClick语句。下面的代码播放SD卡中的文件,正如我所料......

public void Hello (View view) {
    ///ButtonClick Main Body.
    //MediaPlayer mediaPlayer = MediaPlayer.create(getBaseContext(), R.raw.hello);
    //mediaPlayer.start();

SoundPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {

        @Override
        public void onPrepared(MediaPlayer mp)
        //TODO Auto-generated Method stub
        {
            SoundPlayer.start();
        }
    });

    String file = "/sdcard/Music/Hello.mp3";

    SoundPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    try {
        SoundPlayer.setDataSource(file);
    } catch (IllegalArgumentException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IllegalStateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    try {
        SoundPlayer.prepareAsync();
    } catch (IllegalStateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

...但是,如何将源设置为R.raw.hello(声音文件)而不会导致错误?当前的错误消息是“Media Player类型中的方法SetDataSource(String)不适用于arguements(int)”。如果您没有假设,我正在使用Eclipse。

谢谢。

android media-player
1个回答
-1
投票

尝试使用此代码:

MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.sound_file_1);
mediaPlayer.start();
© www.soinside.com 2019 - 2024. All rights reserved.