첫째, 영어가 안 좋아서 죄송합니다. 코드를 사용하면 홈 버튼을 누르면 Mediaplayer를 중지 할 수 있지만 다른 활동을 "열면"중지 할 수도 있습니다. 그런 다음 홈 버튼을 누를 때 Mediaplayer (내 코드의 mpFond)를 중지 할 수 있는지 알고 싶지만 다른 활동을 열 때는 안됩니다.
내 코드는 다음과 같습니다.
private MediaPlayer mpFond;
public void onCreate(Bundle savedInstanceState) {
//some code
mpFond = MediaPlayer.create(AccueilActivity.this,R.raw.accueil);
mpFond.setAudioStreamType(AudioManager.STREAM_MUSIC);
mpFond.setLooping(true);
mpFond.start();
// "definition" des boutons
Button play = (Button) findViewById(R.id.play);
//some code
play.setOnClickListener(new View.OnClickListener() { // LE BOUTON JOUER
@Override
public void onClick(View v) {
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
//Lorsqu'on clique sur "JOUER"
mp = MediaPlayer.create(AccueilActivity.this,R.raw.bruit);
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
//if silent mode
switch (am.getRingerMode()) {
case AudioManager.RINGER_MODE_SILENT:
mp.setVolume(0,0);
break;
}
//demarrage du son
mp.start();
Intent intent = new Intent(app, MainActivity.class);
startActivity(intent);
}
});
//some code
}
//some code
@Override
public void onPause()
{
super.onPause();
if(mpFond.isPlaying()){
mpFond.pause();
}
}
@Override
public void onStop()
{
super.onStop();
if(mpFond.isPlaying()){
mpFond.stop();
}
}
이제 모든 것이 괜찮습니다. 그렇게하는 방법을 찾았습니다.
@Override
public void onPause()
{
super.onPause();
if(mpFond.isPlaying()this.isFinishing()){
mpFond.pause();
}
}
@Override
public void onStop()
{
super.onStop();
if(this.isFinishing(){
mpFond.stop();
}
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다