fix
杨锴
2024-09-09 677497cbfbf159417f2b1bb64aee0196c9fa6382
XQMuse/Root/PayMusicView/PayMusicVC.swift
@@ -108,6 +108,7 @@
class AudioPlayer {
            private var player:AVPlayer?
            private var BGMplayer:AVPlayer?
            private var playIndex:Int = 0 //播放的角标
            private var cacheDirectory:URL!
            private let session = URLSession.shared
@@ -187,6 +188,38 @@
                        }
            }
            func playBGMAt(_ url:String){
                        guard let URL = URL(string: url) else { return }
                        BGMplayer?.pause()
                        if BGMplayer == nil{
                                    BGMplayer = AVPlayer(url: URL)
                        }else{
                                    BGMplayer?.replaceCurrentItem(with: AVPlayerItem(url: URL))
                        }
                        DispatchQueue.main.asyncAfter(delay: 3.0) {
                                    self.BGMplayer?.play()
                                    self.BGMplayer?.volume = Float(UserDefaultSettingViewModel.getSetting()?.volume ?? 0.5)
                        }
                        //播放完成
                        NotificationCenter.default.addObserver(self, selector: #selector(playBGMbackEnd), name:NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: nil)
            }
            func dellocBGM(){
                        BGMplayer?.pause()
                        BGMplayer = nil
            }
            func pauseBGM(){
                        BGMplayer?.pause()
            }
            func playBGM(){
                        BGMplayer?.play()
            }
            func next(){
                        playIndex += 1
                        let index = min((urls.count - 1), playIndex)
@@ -198,6 +231,12 @@
            }
            @objc private func playBGMbackEnd(){
                        self.BGMplayer?.seek(to: CMTimeMake(value: 0, timescale: 1))
                        self.BGMplayer?.play()
            }
            func previous(){
                        playIndex -= 1
                        let index = max(0, playIndex)