我制作一个音频播放器(android)。问题是当我启动我的应用程序>播放歌曲>按后退键或播放歌曲静音播放背景但是当我再次打开应用程序时,它会开始播放旧歌曲所在的新歌曲。怎么摆脱这个?
答案 0 :(得分:1)
停止并释放media player
中的onDestroy
,例如:
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
if(mp!=null){
mp.stop();
mp.release();
mp = null;
}
}
答案 1 :(得分:1)
在播放新歌之前,在mediaplayer.reset();
方法之后使用stop()
。
在select& amp;中添加这些点播放新歌法:
检查曲目是否正在播放:
if(mp.isPlaying())
...其中mp
是MediaPlayer
对象。
如果是,则停止播放,然后重置媒体播放器:
mp.stop();
mp.reset();
mp.reset()
将重置MediaPlayer ex的所有初始化:歌曲URI等。
如果不,则仅重置媒体播放器:
mp.reset();
现在从列表中获取新选择的曲目的位置和ID,并将其设置为新URI。
根据新URI播放曲目:
mp = MediaPlayer.create(this, NewTrackUri);
mp.start();
这应该只播放新选择的曲目。
答案 2 :(得分:0)
问题是我不知道在后台运行的服务。现在我正在使用服务来电镀歌曲和更新活动用户界面服务,当我的应用程序在后台时,歌曲播放,当我重新打开应用程序并选择另一首歌曲时,前一个停止播放和新歌曲开始播放 感谢每个人的帮助