0

我有个问题。即使活动停止,我的媒体播放器也不会停止。所以我很困惑为什么媒体播放器不会停止。媒体播放器立即播放,直到 mp3 播放完毕。这是我的代码

public class Isi_TakbiratulIhram extends Activity{
MediaPlayer mp;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.isitakbiratulihram);

    ImageButton iftitah1=(ImageButton) findViewById (R.id.takbiratulihram1);
    iftitah1.setOnClickListener(new OnClickListener(){
         @Override
        public void onClick(View v){
            go();
         }
        public void go(){

            if(mp != null ){
                mp.stop();
                try {
                    mp.prepare();
                } catch (IllegalStateException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                mp.seekTo(0);

                mp = null;

            }
            else {
                mp=MediaPlayer.create(Isi_TakbiratulIhram.this, R.raw.iftitah1);


            mp.start();


            }




 }});

感谢帮助

4

3 回答 3

0

您可以覆盖onPause()onStop()停止它:

@Override protected void onPause()
{
    if(mp != null ){
        mp.stop();
        // mp.release(); ??
    }
    super.onPause();
}
于 2012-10-13T02:49:12.757 回答
0

用于停止媒体播放器的覆盖 ActivityonPause()方法:

@Override
public void onPause(){
    super.onPause();
    if (mp != null) {
        mp.stop();
        mp.release();
        mp = null;
    }
于 2012-10-13T02:51:13.037 回答
0

当用户停止 Activity 时,Activity 的状态可以进入 onStop() 状态,因此需要停止任何正在进行的任务,例如在这里播放的音乐。所以在 android 编程中,需要处理所有状态,例如 onRestart()、onResume()、 onStop()、onPause()、onDestroy() 以确保程序正常运行。

要处理活动的停止和重新启动,请访问:http: //developer.android.com/training/basics/activity-lifecycle/stopping.html

于 2012-10-13T02:51:59.933 回答