Android开发音乐播放器,如何实现单曲循环,顺序播放,随机播放,全部循环功能,高分求助

最好举例说明,给个源码什么的... 最好举例说明,给个源码什么的 展开
 我来答
zskzhao
推荐于2018-02-28 · TA获得超过346个赞
知道小有建树答主
回答量:852
采纳率:0%
帮助的人:404万
展开全部
MediaPlayer 对象调用setLooping(true);是循环播放。
顺序播放,随机播放,全部循环功能 这些就是自己写方法实现就好了,
顺序播放就是当一首歌播放完后,在播放列表中找到它下一首歌的ID,直到全部完成。
随机播放就是当一首歌播放完后,在播放列表中随机抽取一首歌的ID(排除已经播放),直到全部完成。
全部循环就是顺序播放全部歌曲,到最后一首之后从第一首播放。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
上海风华峻极智能科技
2022-05-05 广告
上海风华峻极智能科技有限公司【远程会议视频系统】一体化解决方案,如同面对面开会一般,让远程会议更简单,多种会议场景布局,舞台设备厂家,高保真语音的传输,极速快捷远程会议体验,只为高效沟通,支持万人及多房间同时在线.... 点击进入详情页
本回答由上海风华峻极智能科技提供
读书人读书生心8526
2011-06-27 · TA获得超过7.2万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:4004万
展开全部
用数组,有多少个歌就写个随机数,给播放的索引 就能随机了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loyee99
推荐于2016-01-01 · TA获得超过130个赞
知道答主
回答量:67
采纳率:0%
帮助的人:57.9万
展开全部
随机播放
1015 private void toggleShuffle() {
1016 if (mService == null) {
1017 return;
1018 }
1019 try {
1020 int shuffle = mService.getShuffleMode();
1021 if (shuffle == MediaPlaybackService.SHUFFLE_NONE) {
1022 mService.setShuffleMode(MediaPlaybackService.SHUFFLE_NORMAL);
1023 if (mService.getRepeatMode() == MediaPlaybackService.REPEAT_CURRENT) {
1024 mService.setRepeatMode(MediaPlaybackService.REPEAT_ALL);
1025 setRepeatButtonImage();
1026 }
1027 showToast(R.string.shuffle_on_notif);
1028 } else if (shuffle == MediaPlaybackService.SHUFFLE_NORMAL ||
1029 shuffle == MediaPlaybackService.SHUFFLE_AUTO) {
1030 mService.setShuffleMode(MediaPlaybackService.SHUFFLE_NONE);
1031 showToast(R.string.shuffle_off_notif);
1032 } else {
1033 Log.e("MediaPlaybackActivity", "Invalid shuffle mode: " + shuffle);
1034 }
1035 setShuffleButtonImage();
1036 } catch (RemoteException ex) {
1037 }
1038 }
1039

循环播放
1040 private void cycleRepeat() {
1041 if (mService == null) {
1042 return;
1043 }
1044 try {
1045 int mode = mService.getRepeatMode();
1046 if (mode == MediaPlaybackService.REPEAT_NONE) {
1047 mService.setRepeatMode(MediaPlaybackService.REPEAT_ALL);
1048 showToast(R.string.repeat_all_notif);
1049 } else if (mode == MediaPlaybackService.REPEAT_ALL) {
1050 mService.setRepeatMode(MediaPlaybackService.REPEAT_CURRENT);
1051 if (mService.getShuffleMode() != MediaPlaybackService.SHUFFLE_NONE) {
1052 mService.setShuffleMode(MediaPlaybackService.SHUFFLE_NONE);
1053 setShuffleButtonImage();
1054 }
1055 showToast(R.string.repeat_current_notif);
1056 } else {
1057 mService.setRepeatMode(MediaPlaybackService.REPEAT_NONE);
1058 showToast(R.string.repeat_off_notif);
1059 }
1060 setRepeatButtonImage();
1061 } catch (RemoteException ex) {
1062 }
1063
1064 }

其实应该就是参数设置的问题,兄弟建议你参考 android music的代码。比如MediaPlaybackActivity.java,网上也可以搜到这个类。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式