Mediaplayer 不会再次启动并在后台播放

Mediaplayer does not start again and plays on background

我是 android/java 的新手,我在用户按下按钮时创建了一个代码,它开始播放一首歌曲,一切都很好,但我有两个问题:

1- 当歌曲结束时,当我再次按下按钮时它不会再次播放,我需要关闭应用程序。

2- 当歌曲正在播放时我按下 home/back,歌曲仍在后台播放。

这是代码----

Button play;
MediaPlayer musica;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    play = (Button) findViewById(R.id.button_play);
    final MediaPlayer musica = new MediaPlayer();

    play.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            if (musica.isPlaying()) {
                musica.stop();
                musica.reset();
            }
            try {
                AssetFileDescriptor afd;
                afd = getAssets().openFd("cdztriste.mp3");
                musica.setDataSource(afd.getFileDescriptor(),
                        afd.getStartOffset(), afd.getLength());
                musica.prepare();
                musica.start();
            } catch (IllegalStateException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }

        }
    });

}

在您的 onBackPressed 函数中,输入

this.finish();

应该可以。 你有两个按钮吗?一个用于重置,一个用于播放?