在android中使用RingtoneManager重复铃声

在android中使用RingtoneManager重复铃声,android,android-mediaplayer,Android,Android Mediaplayer,目前我正在使用以下代码播放铃声: Ringtone ringtone = RingtoneManager.getRingtone(this, Uri.parse(selectedRingtone)); ringtone.play(); 如果我播放默认铃声或系统铃声,它们会循环播放或重复播放。但如果我从我的多媒体资料或媒体商店中选择任何其他声音,它只播放一次。我已经浏览了一些链接,但我不想使用MediaPlayer。我只需要使用铃声播放器你必须使用MediaPlayer Uri notifica

目前我正在使用以下代码播放铃声:

Ringtone ringtone = RingtoneManager.getRingtone(this, Uri.parse(selectedRingtone));
ringtone.play();

如果我播放默认铃声或系统铃声,它们会循环播放或重复播放。但如果我从我的多媒体资料或媒体商店中选择任何其他声音,它只播放一次。我已经浏览了一些链接,但我不想使用MediaPlayer。我只需要使用
铃声播放器

你必须使用
MediaPlayer

Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
MediaPlayer player = MediaPlayer.create(this, notification);
player.setLooping(false);
player.start(); 

并没有任何与循环相关的方法,而且它看起来像是您正在播放的文件(默认),具有关于在文件本身中循环的信息。如果要循环其他文件,必须确保这些文件也包含有关循环的信息。它将帮助您通过Ringtone.class归档您的目标


否则,我建议您使用MediaPlayer。它将允许您在没有文件中循环信息的情况下循环声音(为什么您不想使用这个类?

如果您的目标是Api 28或更高版本,现在在
铃声中有一个
设置循环
方法

在您最初的示例中,您只需添加

ringtone.setLooping(true);

你能告诉我如何在任何媒体文件中输入有关循环的信息吗?从API 28开始,铃声就没有了