Tell me what am I doing wrong? why is the error happening in my code? I can't figure it out, an error like this appears : not initialized at super.init call
I can't find any information, I will be grateful for any help, maybe it will be useful to someone in the future too
import AVKit
import SwiftUI
class UIVideoPlayer: UIView {
var videoURL : String
var playerLayer = AVPlayerLayer()
override init(frame: CGRect) {
super.init(frame: frame)
guard let url = URL(string: videoURL) else { return }
let player = AVPlayer(url: url)
//self.player = player
player.isMuted = true
player.play()
NotificationCenter.default.addObserver(forName: .AVPlayerItemDidPlayToEndTime, object: player.currentItem, queue: .main) { _ in
player.seek(to: CMTime.zero)
player.play()
}
playerLayer.player = player
playerLayer.videoGravity = AVLayerVideoGravity(rawValue: AVLayerVideoGravity.resizeAspectFill.rawValue)
layer.addSublayer(playerLayer)
}
override func layoutSubviews() {
super.layoutSubviews()
playerLayer.frame = bounds
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
struct PlayersView: UIViewRepresentable {
func makeUIView(context: Context) -> UIVideoPlayer {
return UIVideoPlayer()
}
func updateUIView(_ uiView: UIVideoPlayer, context: Context) {
}
}