检测何时,wkwebkit 内视频播放器的 iframe(AVPlayer)

Detect when, iframe(AVPlayer) of video player inside wkwebkit

当我在 WKWebKit 中打开任何带有电影的网站并按下播放器时,这部电影将在某些播放器中打开,我可以在其中暂停、删除等。 我的问题如何检测此 iframe(window 或播放器,我不知道它是如何命名的)何时打开或关闭,并在 window 打开或关闭时在后台执行某些操作。

为清楚起见,如果我在网站上按下带有电影的播放器,我附上了打开此播放器的模拟器屏幕截图。

我使用 UIWindowDidBecomeVisibleNotification 和 UIWindowDidBecomeHiddenNotification 使用 NotificationCenter 解决了这个问题。

我的代码:

override func viewDidLoad() {
        super.viewDidLoad()

// listen for videos playing in fullscreen
        NotificationCenter.default.addObserver(self, selector: #selector(onDidEnterFullscreen(_:)), name: UIWindow.didBecomeVisibleNotification, object: view.window)

        // listen for videos stopping to play in fullscreen
    NotificationCenter.default.addObserver(self, selector: #selector(onDidLeaveFullscreen(_:)), name: UIWindow.didBecomeHiddenNotification, object: view.window)
}

@objc func onDidEnterFullscreen(_ notification: Notification) {
    print("Enter Fullscreen")
}

@objc func onDidLeaveFullscreen(_ notification: Notification) {
    print("Leave Fullscreen")
}