我们有一个XCode项目,它首先构建为一个通用应用程序,然后在路上我们改变了我们的想法,让两个应用程序在同一个二进制文件中,所以我们创建了两个目标。
现在已经有几周了,我们可以轻松构建这些平台,并且可以在iPad和iPhone上进行部署。
现在我们已准备好提交到应用程序商店,我担心可能会拒绝代码。我们现在想要提交仅限iPad的应用程序,但我环顾四周,itunesconnect网站上没有任何地方我可以指定目标设备,因为该项目的结构首先是一个通用应用程序。我想知道他们如何确定测试二进制文件的设备。
有关架构的更多信息: 我们正在为两个目标使用默认生成的info.plist文件。我们是否应该为每个目标设置单独的info.plist?两个.plist文件之间应该存在什么差异。
附上我们正在使用的实际info.plist文件。
感谢您的帮助。
答案 0 :(得分:7)
首先,没有理由为只有ipad目标的基础SDK应该是3.2。事实上,由于iOS 4.2在ipad上运行,您将通过不将基本SDK更改为4.2来限制您的客户群。您可以将目标操作系统设置为iOS 3.2,以确保该应用程序可以在iOS 3.2上运行。
在目标配置构建设置中,查找“目标设备系列”,即目标是“ipad”,“iphone”还是(对于通用应用)“iphone / ipad”。
我还将一个通用应用程序迁移到两个单独的目标 - 这并不好玩。您必须非常仔细地检查您的构建设置和.plist文件,以确保它们对于预期的目标设备是理智的,尤其是检查:基本SDK,iOS部署目标,目标设备系列和Info.plist文件
答案 1 :(得分:4)
我们是否应该为每个目标设置单独的info.plist?
两个.plist文件之间应该有什么区别?
com.example.app
和适用于iPad的com.example.app-hd
)答案 2 :(得分:2)
Apple使用您的Info.plist确定itunesconnect中的目标。
查看截图我认为你需要确保你没有在iPhone目标中指定NSMainNibFile~ipad UISupportedInterfaceOrientations~ipad,反之亦然指定iPad目标(即不包括iPhone特定条目)。顺便说一句,在Xcode中打开Info.plist可以为键提供更具描述性的名称,并提供允许值的下拉列表。
另外要注意UIRequiredDeviceCapabilities,即一般情况下,如果绝对需要,只在你的plist中包含一个键。
答案 3 :(得分:0)
要在iPad中使用iPhone应用,启动图片无法获取, 溶液:
在常规设置中为启动图像选择“不使用资产目录”。 添加,