媒体播放器循环播放:Android

Posted

技术标签:

【中文标题】媒体播放器循环播放:Android【英文标题】:Media Player Looping : Android 【发布时间】:2012-03-16 16:54:45 【问题描述】:

我有 3 秒的 mp3 文件。我想在用户单击暂停按钮的情况下连续播放该 mp3 文件。有什么方法可以循环播放单个文件并再次播放直到用户暂停它。

【问题讨论】:

【参考方案1】:
mMediaPlayer.setLooping(true);

【讨论】:

在调用“player.stop”..did“player.start”之后...但它不起作用...知道如何重新开始循环...? 一旦你调用stop(),你必须先调用prepare()/prepareAsync(),然后再调用start() 我怎样才能让它只循环3次??【参考方案2】:

这是我的项目,放置 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);
        
    

快乐编码

【讨论】:

【参考方案3】:

这是我在项目中使用的工作代码

 if (Flags.notificationReceived) 
                        showAlert(Flags.patientModel);
                        Flags.notificationReceived = false;
                        mp.start();
                        mp.setLooping(true);
                        vibrate(2000);
                    

【讨论】:

通过点击相同的播放停止循环【参考方案4】:

这个对我有用。 (用 Kotlin 编写)

 val uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM)
 var mp = MediaPlayer.create(context, uri)
 mp.isLooping = true
 mp.start()

要停止,您应该调用您的 stop() 函数:

mp.stop()

【讨论】:

【参考方案5】:

mediaPlayer.start() 用于启动 mediaPlayer,mediaPlayer.pause() 用于暂停 mediaPlayer。对于 looping mediaPlayer 的次数,您可以使用循环:-

for(int i=1;i<=3;i++)
    mediaPlayer.setLooping(true);
    i++;

【讨论】:

为什么要在 for 循环中设置这个值? 根据用户的选择设置音频循环播放,这只是一个例子而不是完美的代码。

以上是关于媒体播放器循环播放:Android的主要内容,如果未能解决你的问题,请参考以下文章

Android音频播放

播放器组件在循环渲染时播放回声

android音乐播放器加载本地音乐失败

Android 视频播放器插件 - MXVideo

音频播放器循环多次运行

Android制作简易的音乐播放器和视频播放器