2017-02-08 2 views
0

나는 버튼을 살짝 누르고 소리를 재생 한 후 몇 분 후에 자동으로 멈추는 소리를내는 간단한 테스트 프로젝트를 개발하려고한다. 정지안드로이드 완전히 MediaPlayer를 삭제하는 방법

if (mPlayer != null) mPlayer = null; 

mPlayer = MediaPlayer.create(this, R.raw.shush_v2); 

mPlayer.setLooping(true); 

mPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
    @Override 
    public void onPrepared(MediaPlayer mediaPlayer) { 
      mediaPlayer.start(); 
    } 
}); 

코드 :

if(mPlayer != null && mPlayer.isPlaying()) {    
    mPlayer.stop(); 

    mPlayer.reset(); 

    mPlayer.release(); 

    mPlayer = null; 
} 

하지만 때때로 나는 아직도이 소리가 다시 경기를들을 수있는 연주에 대한

코드 : 여기

는 코드입니다 나는 소리를 멈췄다.

이전에이 동작을 본 적이 있습니까?

답변

0
public class PlayerApp extends Activity { 
    Button btnStart; 
    MediaPlayer mediaPlayer = null; 

    // Use the handler to stop the Player, after specific time 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_player_app); 
     btnStart = (Button)findViewById(R.id.btnStart); 
     btnStart.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) 
      { 
       // Initialize Player and start it. 
       // Call the Handler same time. 
       mediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.test); 
       mediaPlayer.start(); 
       startHandler(); 
      } 
     }); 
    } 
    private void startHandler() 
    { 
     final Handler handler = new Handler(); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       // if Player is not null, then Stop it and Reset Null. 
       if(mediaPlayer!=null) 
       { 
        mediaPlayer.stop(); 
        mediaPlayer = null; 

       } 
      } 
     }, 2500); 
    } 

} 
+0

안녕 Jaspreet 나는 당신의 대답을 확인하고 그것을 시도했지만 같은 여기 내 코드 가득합니다. –

+0

https://github.com/SelfnessAid/BabyShusher---Android/blob/master/app/src/main/java/babyshusher/babyshusher/com/babyshusher/MainActivity.java –

+0

나에게 무슨 문제가 있는지 알려주세요. –