android - 无法让MediaPlayer工作

时间:2017-03-18 16:36:08

标签: android android-mediaplayer

所以这是我在stackoverflow上的第一个问题,所以请放轻松对我^^

因为有些日子我开始进行android开发。作为第一个小项目,我想开发一个音板应用程序。可悲的是,我无法让该死的MediaPlayer工作。要么它没有给出任何错误,我听不到任何事情(音量最大),或者当我想准备MediaPlayer时我收到错误。

点击按钮时,我调用了playSound(View)事件。在函数内部,我想从应用程序资源中播放mp3文件。这是我当前的代码,您将找到一个链接,您可以看到,我如何将mp3文件添加到应用程序资源。我google了很多,并且我现在已经尽力了解但是我无法让它工作..你有什么想法代码可能有什么问题吗?

public void playSound(View v)
    {
        AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
        builder.setCancelable(true);

        MediaPlayer mediaPlayer = new MediaPlayer();

        try {
            mediaPlayer.setDataSource(MainActivity.this, Uri.parse("android.resource://mypackagename/res/raw/einemetallischebitterkeit"));
            mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

            mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
                @Override
                public void onCompletion(MediaPlayer mp) {
                    mp.stop();
                    mp.release();
                }
            });

            mediaPlayer.prepare();
            mediaPlayer.start();

        } catch (IOException e) {
            builder.setMessage(e.toString());
            AlertDialog dialog = builder.create();
            dialog.show();
        }

    }

mp3 file in app resources

1 个答案:

答案 0 :(得分:0)

你应该这样使用

InputStream mymp3 = getResources().openRawResource(R.raw.einemetallischebitterkeit);