2012-03-29 159 views
0

我开发了iOS应用中的用户体验,用于在通过AirPlay屏幕镜像或HDMI输出连接的外部屏幕上显示不同视图。我有一个设置来启用/禁用此功能,允许用户在此模式和真正的镜像之间进行选择(即在两个屏幕上都有相同的体验)。由于许多iOS设备甚至不支持外接显示器(iPhone 3GS及更早版本,iPod touch),有些仅支持HDMI输出(iPhone 4,iPad 1,iPad 2和iOS4),所以我想定制设置每种设备的UI设置。检测iOS AirPlay屏幕镜像功能

我知道尽可能检测功能并且避免检查设备本身的版本是一种很好的做法。但是,我还没有发现任何关于检测AirPlay支持的内容,只是如何为其编写代码。

是否可以检测到SDK中的AirPlay/HDMI支持?

(苹果的外部屏幕开发文档: http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewPG_iPhoneOS/CreatingWindows/CreatingWindows.html

回答

1

不,不是直接和汇总方式。

我认为你可能是最好的检测设备版本,并使用它作为你的用户界面的基础。

如果你确实认为这是不好的做法,我建议你去探索Erica Sadun的UIDevice扩展 - 你可以在那里找到必要的代码来查询足够的特定功能来创建一个抽象,让你知道一个设备是AirPlay/HDMI能力。如果你这样做,我希望你分享它!

的UIDevice扩展:https://github.com/erica/uidevice-extension

作为一个侧面说明,不要忘了VGA适配器。我用1080p测试了我的应用程序,它的工作情况/看起来和HDMI适配器一样好,这对我来说是一个很大的惊喜。

+0

感谢您的建议@RobReuss。这种情况有点多毛,因为它需要查看操作系统版本和设备版本。我一定会考虑Erica的扩展,看看它是否有帮助。 – goldierox 2012-04-04 00:22:51