我的活动中有一个默认铃声:

remindRingtoneView = (TextView) findViewById(R.id.remind_ringtone);

remindRingtoneView.setText(RingtoneManager.getRingtone(
            NewReminder.this, ringtone_uri).getTitle(
            NewReminder.this));

在这行之后,我在logcat中有一个调试行,标记为“铃声”并显示消息=
'Successfully created a local player'.
当我完成活动和系统垃圾收集器时,我在logcat中收到了一条警告消息=
'MediaPlayer finalized without being released'.

我怎样才能释放它?
答案是:
Ringtone remind_ringtone = RingtoneManager.getRingtone(
            NewReminder.this, ringtone_uri);
remindRingtoneView.setText(remind_ringtone.getTitle(NewReminder.this));
remind_ringtone.stop();

最佳答案

在您的程序中,RingtoneManager.getRingtone将对象返回到Ringtone类。如果我们认为这个对象是mRingTone,那么调用mRingTone.stop()将释放MediaPlayer对象。

08-05 08:25