Trước iOS 8, thông báo UIMoviePlayerControllerDidEnterFullscreenNotification
được gửi bất kỳ lúc nào trình phát đa phương tiện chuyển sang chế độ toàn màn hình từ UIWebView. Trong iOS 8, điều này không xảy ra và một số đã gợi ý để nghe thông báo AVPlayerItemBecameCurrentNotification
thay thế. Điều này dường như không được gửi từ WKWebView. Lắng nghe thông báo UIWindowDidBecomeVisibleNotification
không hoạt động vì nó được kích hoạt cho tất cả các cửa sổ được thêm vào (bao gồm những thứ như mạng quảng cáo)WKWebView Media Player phát hiện toàn màn hình
Tóm lại, tôi đã làm việc suốt đêm này và dường như tôi không thể tìm ra cách xác định xem video đã được mở ở chế độ toàn màn hình với WKWebView hay chưa. Bất kỳ trợ giúp sẽ được đánh giá cao.
Chỉnh sửa: Để xác nhận, tôi đã tạo một dự án trống. Đã thêm một UIWebView và trình nghe AVPlayerItemBecameCurrentNotification
vào nó và nó được kích hoạt khi tôi phát video và nó đã được nhập toàn màn hình. Tôi đã chuyển UIWebView đó thành WKWebView và thông báo đó không còn được kích hoạt nữa.
Điều tốt nhất tôi có thể tìm thấy là 'UIWindowDidBecomeKeyNotification' để xác định khi một cửa sổ khác đã tiếp quản. Điều này, may mắn thay, không kích hoạt khi quảng cáo biểu ngữ của tôi được tạo. Sau đó tôi đặt một biến 'windowBecameKey' và thử nghiệm nó trên' UIWindowDidBecomeHiddenNotification'. Cái nấc cụt duy nhất tôi thấy có thể làm cho điều này trở nên yếu ớt một chút là 'UIWindowDidBecomeKeyNotification' lại kích hoạt ngay trước khi cửa sổ toàn màn hình ẩn đi. Nếu, vì lý do nào đó, nó cháy sau đó, nó có thể sẽ phá vỡ mọi thứ. –