我已经在活动A中发出了声音并希望在活动B中停止播放。我该怎么做?
这是我用来启动声音的代码:
MediaPlayer mp = MediaPlayer.create(con, R.raw.siren1);
mp.start();
感谢。
编辑: 这是解决方案:
活动A
static MediaPlayer mp;
.........
mp = MediaPlayer.create(con, R.raw.siren1);
mp.start();
活动B
confirmButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
if (SmsReceiver.mp.isPlaying() == true) {
SmsReceiver.mp.stop();
}
finish();
}
});
答案 0 :(得分:2)
您可以将MediaPlayer对象声明为静态,然后从其他活动中引用它。
答案 1 :(得分:0)
您应该在静态类中跟踪您的MediaPlayer对象(Singleton设计)。这样,您就可以从任何地方访问该对象。看看这个:Singleton Design