На первой активности загружается полноэкранное объявление (AdMob)
Есть вторая активность. Сама игра. В ней начинает играть музыка, как только активность запускается. Музыка воспроизводится с помощью MedaiPlayer, также я ставлю музыку на паузу при сворачивании приложения и выключаю ее при закрытии активности.
Затем в Intent'е после startActivity() показываю полноэкранное объявление. При его закрытии музыка накладывается сама на себя два раза. Причем один поток потом просто умолкает через 4-7 секунд. Когда в игре в следующий раз показывается полноэкранка (не при старте активности) - музыка ставится на паузу, при закрытии объявления продолжает играть.
1 ActivityIntent intent = new Intent(this, Game.class);
startActivity(intent);
if (interstitial.isLoaded()) interstitial.show();
2 ActivityMediaPlayer mp;
int music;
//в onCreate
music = R.raw.m1;
playMusic();
//далее после onCreate
void playMusic(){
new Thread(){
public void run(){
MediaPlayer.create(Game.this, music);
mp.start();
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener(){
public void onCompletion(MediaPlayer arg0){
arg0.start();
}
});
}
}.start();
}
@Override
public void onPause() {
Game.super.onPause();
if (mp != null) mp.pause();
}
@Override
public void onResume() {
Game.super.onResume();
playMusic();
}
Вопрос: в чем причина повторного наложения музыки при открытии активности и полноэкранного объявления? Ведь при дальнейшем показе все в порядке. И в чем причина последующего самостоятельного отключения одного потока?