按android音乐播放器播放功能怎么实现 搜索结果列表

2025-02-26 16:21:27
推荐回答(1个)
回答1:

随机播放
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,网上也可以搜到这个类。