Android:在播放新歌之前停止播放歌曲。

时间:2014-01-14 13:31:48

标签: android audio task repeat

我收到短信时会尝试播放歌曲, 当我收到2条短信,然后同时播放歌曲。

感谢您的帮助

           Runnable stopPlayerTask = new Runnable(){
                @Override
                public void run() {
                    mPlayer.stop();
                }
            };

            if(mPlayer.isPlaying()){
                mPlayer.stop();
            }else{
                mPlayer.seekTo(startime);
                mPlayer.start();
                mPlayer.setLooping(true);
            }
            Handler handler = new Handler();
            handler.postDelayed(stopPlayerTask, endtime);

2 个答案:

答案 0 :(得分:0)

如果我理解您对mediaPlayer的预期用途,您应该从Android系统请求Audio Focus。因此,您可以将mediaplyer包装在实现“AudioManager.OnAudioFocusChangeListener”的服务中。如果您为应用程序正确实现了回调,则该歌曲永远不应同时播放。

请注意,Android要求API级别至少为8才能使用AudioManager

以下是文档中的参考资料: http://developer.android.com/guide/topics/media/mediaplayer.html

答案 1 :(得分:0)

mPlayer.reset();之后使用mPlayer.stop(); 这将重置所有初始化ex:track URI等,因此必须在mPlayer.start();

之前再次设置跟踪URI

这将只允许新的和一个曲目一次播放并且将停止&完全重置上一首曲目。