在iOS 8之前,媒体播放器在任何时候从UIWebView转到全屏时都会发送UIMoviePlayerControllerDidEnterFullscreenNotification
通知。在iOS 8中,这种情况不会发生,有些人建议您改用AVPlayerItemBecameCurrentNotification
通知。这似乎不是从WKWebView发送的。监听UIWindowDidBecomeVisibleNotification
通知不起作用,因为它是为所有添加的窗口(包括广告网络等事物)而被解雇的WKWebView媒体播放器全屏检测
底线,我一直在研究这一整夜,我似乎无法弄清楚如何确定是否用WKWebView全屏打开视频。任何帮助,将不胜感激。
编辑:为了确认,我创建了一个空白项目。添加了一个UIWebView和AVPlayerItemBecameCurrentNotification
监听器,它在我播放视频时触发,并且全屏显示。我将该UIWebView切换到WKWebView,并且该通知不再被触发。
我能找到的是'UIWindowDidBecomeKeyNotification'确定何时另一个窗口接手最好的作品。幸运的是,这并没有在我的横幅广告创建时触发。然后我设置一个'windowBecameKey'变量并在'UIWindowDidBecomeHiddenNotification'上测试它。我看到的唯一的打嗝可能会使这个有点脆弱的是,UIWindowDidBecomeKeyNotification在全屏窗口隐藏之前再次触发。如果出于某种原因,事后发生,它可能会破坏事情。 – 2014-12-11 17:42:45