我正在尝试为我的儿子编写一个小型 android 应用程序。这个想法是让铃声在按钮单击时开始播放,并且应该通过单击另一个按钮来停止。就像您单击一个按钮开始通话,然后单击另一个按钮来接听电话一样。我设法做的是通过以下代码使第一个响铃按钮工作:
CallLukas.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
MediaPlayer mp = MediaPlayer.create(getApplicationContext(), notification);
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
}
});
但是,停止铃声的第二个按钮无法正常工作。我使用以下代码:
Incoming.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(mp.isPlaying()) {
mp.stop();
mp.release();
}
}
});
它会停止铃声,但同时会使应用程序崩溃。停止先前激活的铃声的正确方法是什么?谢谢你...