2012-08-16 3 views
0

나는 5 초 동안 소리를 내고 싶다. 그러나 내가 사용하고있는 코드는 소리를 무한정 재생하고있다.5 초 동안 소리를내는 방법

내 코드는 코드

player.setLooping(true); 

답변

2

시도이다.

postDelayed(new Runnable() { 
    public void run() { 
     //Code to stop your sound 
    } 
}, 5000); 
+0

감사가 – swati

+0

@swati를 작동하는 확인란 : 내가 코드 – Anton

2

를 사용하여 오디오를 중지하는 지연의 Runnable에서이 줄을 제거하는

final MediaPlayer player = new MediaPlayer(); 
AssetFileDescriptor afd = this.getResources().openRawResourceFd(R.raw.hangout_ringtone); 
player.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength()); 
afd.close(); 
player.setAudioStreamType(AudioManager.STREAM_ALARM); 
player.setLooping(true); 
player.prepare(); 
+0

을 수락을 클릭 있지만하시기 바랍니다 예를 들어, View의 postDelayed 또는 Handler를 호출 할 수가 있습니다. – swati

+0

나는 코드가 당신이 게시하고있는 상황을 모르는 작성해야 –

1

언제 중지 할 지에 대한 지연을 게시하는 새 처리기를 만듭니다. 문제는 다음 해결되면

  mMediaPlayer.start(); 
      // wait 5 sec... then stop the player. 
      new Handler().postDelayed(new Runnable() { 
       @Override 
       public void run() { 
        mMediaPlayer.stop(); 
       } 
      }, 5000);//millisec. 
관련 문제