Reputation: 1169
I am developing an Android app with ringtone setup. The problem is that I want to set my ringtone to 8 seconds. Here is my code:
Uri alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource(this, alert);
final AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
if (audioManager.getStreamVolume(AudioManager.STREAM_ALARM) != 0) {
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_ALARM);
mMediaPlayer.setLooping(true);
mMediaPlayer.prepare();
mMediaPlayer.start();
}
Upvotes: 0
Views: 599
Reputation: 538
Here I am using Timer to stop the Ringtone.
long ringDelay = 3500;
Uri notification =RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
final Ringtone alarmRingtone= RingtoneManager.getRingtone(getApplicationContext(), notification);
alarmRingtone.play();
TimerTask task = new TimerTask() {
@Override
public void run() {
alarmRingtone.stop();
}
};
Timer timer = new Timer();
timer.schedule(task, ringDelay);
Upvotes: 1