2016-07-26 78 views
6

我用xcode創建了應用程序,並選擇通用作爲設備,部署目標是iOS 8.0。爲什麼我的iOS應用程序與舊設備(例如iPhone 4S,5,iPad 2)不兼容?

我將我的應用程序發送到App Store並獲得批准,但我在應用程序頁面上看到了該列表。

需要iOS 8.0或更高版本。兼容iPhone 5s,iPhone 6,iPhone 6 Plus,iPhone 6s,iPhone 6s Plus,iPhone SE,iPad Air,iPad Air Wi-Fi +手機,iPad mini 2,iPad mini 2 Wi-Fi + Cellular,iPad Air 2,iPad Air 2 Wi-Fi + Cellular,iPad mini 3,iPad mini 3 Wi-Fi + 手機,iPad mini 4,iPad mini 4 Wi-Fi + Cellular,12.9英寸iPad Pro,12.9英寸iPad Pro Wi-Fi + Cellular,9.7英寸iPad Pro,9.7英寸 iPad Pro Wi-Fi + Cellular和iPod touch(第6代)。

我需要支持iPad 2,iPad 3,iPad 4和iPhone 4S以及iPhone 5.我該怎麼辦?

+0

也許你創建了一個僅64位的應用程序? –

+0

armv7在構建設置中被視爲有效的體系結構。 – mTuran

+0

查看@ Summer的評論,如果arm64列在「所需架構」中,則將armv7列爲有效無關緊要。你能發佈你的項目設置的任何截圖嗎? –

回答

7

檢查構建設置 - >架構。確保您包含armv7作爲有效的體系結構。

另請嘗試將適合iPhone 5屏幕尺寸(320 * 568)的應用預覽屏幕截圖添加到iTunes Connect。

編輯

我仔細檢查過我的應用程序在App Store。應用程序功能描述爲「需要iOS 7.0或更高版本。與iPhone,iPad和iPod touch兼容。」

我建議您確保iTunes Connect中的」設備要求「部分是正確的。爲此,請選中「活動 - > iOS版本 - >版本X.X - >設備要求」。我在這裏的設置如下(不支持iPad):

enter image description here

最重要的部分是檢查「需要的能力」一節中不包括「arm64」。在此基礎上Apple Doc

爲了有資格安裝在 開始本文件所列的設備上,應用程序必須被編譯爲 的ARMv7(除arm64),必須不包括arm64需要 設備能力。

您可以在同一doc的「刪除arm64所需設備功能」部分找到解決方案。

最後的手段:從您的開發人員門戶向Apple提供專門針對您的應用程序功能問題的技術支持。

+0

你好,我已經上傳了3.5「截圖到iTunes已經是這個我的設置:https://s31.postimg.org/k969oi36z/Screen_Shot_2016_07_26_at_20_45_47.png – mTuran

+0

@mTuran我已經添加了一些關於我的答案可能的解決方案的更多信息。您的iTunes Connect是否與我的功能相同? – Summer

1

檢查您的info.plist文件中是否有任何需要使用UIRequiredDeviceCapabilities密鑰的64位系統。

2

你提到的那些設備列表是64位設備。可能你只編譯64位設備。如果您使用64位設備進行調試,則可能會發生此錯誤。

在構建設置,還有本場

Build Active Architectures Only 

務必將NOReleaseYESDebug

,並且確保你有這些:arm64 armv7 armv7sValid Architectures下領域。

1

爲什麼不像Xcode 6.0那樣在舊的Xcode上創建構建,並嘗試在iPhone 5和iPad2上安裝構建?看看這是否有助於你。

2

查看@ Summer的評論,如果arm64列在「所需架構」中,則將armv7列爲有效並不重要。

此外,請注意,有時您特定目標中的設置可能會覆蓋項目中的設置。

這裏是哪裏我想看看截圖:

在您的info.plist: In your info.plist

在您的項目設置: In your project settings

相關問題