获取AirPlay投屏的UIWindow

Get UIWindow of AirPlay mirroring screen

我试图在使用AirPlay 镜像时获取外部屏幕(例如电视)的UIWindow 对象。棘手的部分:它确实是 AirPlay 镜像,而不是单独的显示,因为我们使用的是 AirPlay 的内置功能,而不是设置一个新的 UIWindow 对象并将其分配给新屏幕。我的老板希望应用程序以各种方式镜像设备,但能够通过将子视图(教程覆盖)添加到外部 window,将它们添加到辅助屏幕的 UIWindow。

我尝试过的:

有没有办法使用 AirPlay 镜像访问 window 辅助屏幕?或者,是否有一种方法可以有效地实现设备的应用程序范围镜像,从而更好地控制与电视关联的 UIWindow 对象?

这份来自 Apple 的文档: https://developer.apple.com/library/ios/documentation/WindowsViews/Conceptual/WindowAndScreenGuide/UsingExternalDisplay/UsingExternalDisplay.html

声明:

To re-enable mirroring after displaying unique content, simply remove the window you created from the appropriate screen object.

这意味着当镜像处于活动状态时,没有window链接到它,镜像只使用主屏幕的window。

只有一个window,我认为这种模式下不可能显示不同的内容。

如果您想显示不同的内容,您必须创建一个新的 window 并将其分配给该屏幕。