很久沒有寫「iOS 開發補完計畫了」,這個系列的文章都會免費公開給所有讀者,特別適合新手,而且是 AI 工具大概不會告訴你的事情。
今天要分享的這個坑,甚至連一些資深 iOS 工程師也不見得知道,那就是:一個 iOS app 如果有支援 iPad,一旦上架過 App Store,就不能改回只支援 iPhone。
Xcode 新專案預設支援 iPad
在 Xcode 新增 iOS 專案時,預設都會支援 iPad。如果沒有特別把它移除,那麼打包(Archive)後上傳到 App Store 送審時,系統以及審查人員就會認定:這個 app 是有做好 iPad 支援。
Xcode 專案:這個 iOS App 支援 iPad
有支援 iPad 的意思是,app 在 iPadOS 上執行時,是可以自由調整視窗大小的。如果不支援 iPad,app 會以 iPhone 介面呈現(如果開發者手邊沒有 iPad,可以使用模擬器看看效果)。
除此之外,我們必須提供給 App Store 頁面符合 iPad 尺寸與規範的截圖。審查人員也很有可能會使用 iPad 做審查。
所以,如果不打算支援,要在打包之前移除 iPad 的支援設定。
已經上架的 iPad App 不能移除支援
App Store 官方規則有說到:
... does not allow uploading an updated version of an app when the update runs on fewer devices than the version of the app currently in the App Store. This is by design.
也就是說,App Store 上的新版 app,支援的裝置不能少於舊版的。從文件底部的日期 2010 年來看,這個規則應該是初代 iPad 推出當年就存在的。
macOS 與 visionOS 呢?
有些讀者可能會問:那 iOS app 在 Xcode 一併勾選的 macOS 與 visionOS 的支援呢?這部分不會有問題,因為我們上傳的是 iOS App,macOS 與 visionOS 都是 Apple 以自動相容的方式支援。
以 iPlayground iOS App 為例,你可以在 Apple silicon Mac 與 Apple Vision Pro 上使用這個 App,但它們是自動相容的版本。

Apple silicon Mac 與 Apple Vision Pro 上的 iOS App 提供設定可以隨時調整
你甚至可以隨時關掉這個功能,它們就會立刻在 Mac 或 visionOS App Store 上消失,風險非常低。
如果要開發並上架完全原生的 Mac 或 visionOS app,而不是基於 iOS,其實要另外新增平台。

原生 Mac 與 visionOS App 要另外新增
總之,我們只需要擔心是否要支援 iPadOS。
結論
整理規則如下:
- 支援 iPad 可以之後增加,但不能拿掉
- 不支援 iPad 的 App,在 iPad 上會以放大模式執行
- macOS / visionOS 的自動相容可自由開關
是否一併支援 iPad,在設計與工程方面的成本會差很多。 重點提醒:開發者要想清楚是否要支援 iPad,而不是直接沿用 Xcode 新專案的預設選項。
此外,我建議 iOS 開發者儘早考慮從哪一版要開始支援 iPad。不管是一開始就一併支援 iPad、後續增加,或是永不支援 iPad,在安排開發計畫時都會有不同的策略。這已經超過本文的範圍了,讀者若有興趣的話,有機會再談。










