刚开始创建Nerdfeed时,我们的目标是开发一款只针对iPad的应用。下面要将Nerdfeed改为通用应用。选中位于项目导航面板顶部的Nerdfeed条目,在编辑器区域选中Nerdfeed目标,然后单击General标签,在编辑区域找到标题为Devices的弹出菜单,选择Universal(见图22-5)。
图22-5 将Nerdfeed改为通用应用
现在Nerdfeed已经是通用应用了,可以在iPhone中正确运行。针对不同类型的模拟器构建并运行应用,检查运行结果是否正确(见图22-6)。
图22-6 改用iPhone模拟器
Nerdfeed的通用化过程很简单,原因有两个(记住这两点会对读者将来自己编写应用有帮助)。
•本章在编写Nerdfeed时,就顾及了若干类在不同设备上的差异性。例如,考虑到UISplitViewController不能在iPhone或iPod touch上使用,就针对这些设备提供了第二套界面。通常情况下,读者在使用iOS SDK提供的类时,应该参阅相关文档的讨论部分。这部分文档会说明能否在特定的设备上使用相应的类和方法。
•Nerdfeed是一个相对简单的应用。越早开始考虑通用化的问题,实施时就会越容易。随着应用的开发,会有越来越多的细节和通用化过程产生牵连。编写代码时就把通用化的问题考虑进去,会比将来基于现有代码修改容易得多。定位实现细节是件很困难的事情,有可能引发新的问题并破坏当前能够正常工作的代码。