アクティビティから着信音を鳴らす次のコードがあります。30 秒間鳴り続けるには、この着信音が必要です。以下のコードからわかるように、タイマーを使用して 30 秒でこの着信音を停止します。私が抱えている問題は、30 秒間鳴り続けるのではなく、1 回鳴ってから停止することです。30秒間連続して着信音を鳴らすことができるように、誰かがこれに対する解決策を指摘できますか?
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
final Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification);
r.play();
final Timer t = new Timer();
t.schedule(new TimerTask() {
public void run() {
r.stop();
t.cancel();
finish();
}
}, 30000);
}