【发布时间】:2012-03-16 16:54:45
【问题描述】:
我有 3 秒的 mp3 文件。我想在用户单击暂停按钮的情况下连续播放该 mp3 文件。有什么方法可以循环播放单个文件并再次播放直到用户暂停它。
【问题讨论】:
标签: android android-mediaplayer
我有 3 秒的 mp3 文件。我想在用户单击暂停按钮的情况下连续播放该 mp3 文件。有什么方法可以循环播放单个文件并再次播放直到用户暂停它。
【问题讨论】:
标签: android android-mediaplayer
mMediaPlayer.setLooping(true);
【讨论】:
stop(),你必须先调用prepare()/prepareAsync(),然后再调用start()
这是我的项目,放置 mediaPlayer.setLooping(true);在 mediaPlayer.start() 之后;
public static void PlayAudio(Context c, int id){
mediaPlayer = MediaPlayer.create(c, id);
soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC,50);
if (!mediaPlayer.isPlaying())
{
isPlayingAudio = true;
mediaPlayer.start();
mediaPlayer.setLooping(true);
}
}
快乐编码
【讨论】:
这是我在项目中使用的工作代码
if (Flags.notificationReceived) {
showAlert(Flags.patientModel);
Flags.notificationReceived = false;
mp.start();
mp.setLooping(true);
vibrate(2000);
}
【讨论】:
这个对我有用。 (用 Kotlin 编写)
val uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM)
var mp = MediaPlayer.create(context, uri)
mp.isLooping = true
mp.start()
要停止,您应该调用您的 stop() 函数:
mp.stop()
【讨论】:
mediaPlayer.start() 用于启动 mediaPlayer,mediaPlayer.pause() 用于暂停 mediaPlayer。对于 looping mediaPlayer 的次数,您可以使用循环:-
for(int i=1;i<=3;i++){
mediaPlayer.setLooping(true);
i++;
}
【讨论】: