私は音楽アプリを作りようとしていました。音楽は完全には再生されていますが、音楽が終了すると次の曲を再生しません。私はこの解決策を探していた。私はいくつかの解決策が私にエラーを与えるのだと尻を試してみるとき。 [Shironamhin.MusicPlayer playerDidFinishPlaying:]: 認識されていないセレクタがインスタンスに0x17003d960音楽が終わったときに次の曲を再生するiOS swiftで音楽が終了したら
を送った私は、このよう
をしようとしていた - 」: 'NSInvalidArgumentException'、 理由によりキャッチされない例外にアプリをerminatingclass MusicPlayer: NSObject { static let player = MusicPlayer() //this is global variable var player : AVPlayer? var playerItem:AVPlayerItem? func initPlayer(){ do { try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback) try AVAudioSession.sharedInstance().overrideOutputAudioPort(AVAudioSessionPortOverride.speaker) print("AVAudioSession Category Playback OK") do { try AVAudioSession.sharedInstance().setActive(true) print("AVAudioSession is Active") } catch let error as NSError { print(error.localizedDescription) } } catch let error as NSError { print(error.localizedDescription) } } func playMusic(_ musicUrl: String?) { if let mm = musicUrl { var url: URL! url = URL(string: mm) playerItem = AVPlayerItem(url: url) player = AVPlayer(playerItem: playerItem) player?.volume = 1.0 player?.rate = 1.0 player?.play() NotificationCenter.default.addObserver(self, selector: Selector(("playerDidFinishPlaying:")), name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: playerItem) } func playerDidFinishPlaying(note: NSNotification) { print("call") } } }
また、このplayerDidFinishPlayingを実装するにはどうすればよいですか?
あなたはplayMusic' 'の外' playerDidFinishPlaying'を移動する必要があります。 – the4kman
私はそれを動かしました。まだ同じエラーです。あなたはタラを共有していただけますか? –