2011-02-09 80 views
11

我們有一個XCode項目,它是第一個作爲通用應用程序構建的,然後在路上我們改變了主意,讓這兩個應用程序相同的二進制,所以我們創建了兩個目標一個XCode項目,兩個目標,兩個應用程序(iPhone/iPad)不通用應用程序

  1. 第一個稱爲:AppName,用於iPhone:基礎SDK爲4.2,部署目標爲3.1.3。目標設備是iPhone。
  2. 第二個稱爲:AppNameHD,適用於iPad:基礎SDK爲3.2,目標設備爲iPad。

它已經幾個星期,現在我們很容易建立爲每個平臺,並能夠在iPad和iPhone上都部署。

現在我們已經準備好提交給應用商店,我擔心可能會拒絕代碼。我們現在只想提交iPad應用程序,但是我查看了itunesconnect站點中沒有地方可以指定目標設備,並且項目的結構首先是通用應用程序。我想知道他們如何確定在哪個設備上測試二進制文件。

有關該體系結構的更多信息: 我們對兩個目標都使用默認生成的info.plist文件。我們是否應該爲每個目標單獨設置一個info.plist?這兩個.plist文件之間應該存在什麼差異。

這裏附上我們正在使用的實際info.plist文件。

感謝您的幫助提前。 enter image description here

回答

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文件

+0

謝謝。這工作就像一個魅力,我的iPad版本現在在商店。電話一來。 – clide313 2011-02-17 13:13:56

2

Apple使用您的Info.plist確定itunesconnect中的目標。

看着你的截圖我認爲你只需要確保你沒有在iPhone目標中指定NSMainNibFile〜ipad和UISupportedInterfaceOrientations〜ipad,反之亦然,這是iPad目標(即不包括iPhone特定條目)。順便說一句,在Xcode中打開Info.plist爲這些鍵提供了更多的描述性名稱,併爲允許的值提供了一個下拉菜單。

同樣要小心UIRequiredDeviceCapabilities,也就是說,如果絕對需要,通常只在plist中包含一個關鍵字。

4

我們是否應該爲每個目標單獨設置一個info.plist?

  • 是的。

這兩個.plist文件應該有什麼區別?對於

  • 包標識符(例如,com.example.app爲iPhone/iPod和com.example.app-hd爲iPad)
  • (可選)圖標
  • (可選)啓動圖像(iPhone,iPhone @ 2X和ipad不同)(不同iPhone,iPhone @ 2x和新iPad)
  • (可選)支持的接口方向(在我的經驗,至少2個方向爲iPad)
0

要使用的iPad的IPhone應用程序,啓動圖像不 解決方案:

在常規設置中選擇「不要使用資產目錄」來啓動圖像。 添加,

相關問題