Guideline 4.0 Design:App 因介面被 Apple 退件
作者:Mehdi Azizi
發布於 ,9 分鐘
Apple 以 4.0 退件,代表介面被認為難以使用,常發生在 iPad。逐一在 iPhone SE 和 iPad 上測試每個畫面,修正後再回覆。
「Guideline 4.0 - Design」跟其他有編號的規則不太一樣:它是 Apple 規範中 Design 章節的開頭段落,當你的介面看起來達不到應有水準時就會被引用。公開的退件案例都很類似:iPad 上畫面擠成一團、文字難以閱讀、登入被導向 Safari、Sign in with Apple 整合得不好。修正幾乎都要從訊息中提到的裝置開始,一個畫面一個畫面處理。
我自己用 Expo 發布 iOS App:Solys、TradaZen 和 Nolera 都只設定支援 iPhone,但審核人員還是在 iPad 上測試了 Solys 和 Nolera。這篇指南根據 Apple 的官方文字、其他開發者公開的 4.0 退件案例,以及我每次送審前都會跑一遍的視覺檢查表。想看所有退件原因的總覽,請讀 Apple 為什麼退件你的 App。
Guideline 4.0 Design 涵蓋哪些範圍?
App Review Guidelines 第 4 節開頭是一段沒有編號的文字:「Apple customers place a high value on products that are simple, refined, innovative, and easy to use, and that's what we want to see on the App Store.」它接著說設計由你決定,但後面的內容訂出了「minimum standards for approval」。它也警告,通過審核後品質變差的 App 可能會被下架。
簡單說:Apple 期待的是簡單、精緻、好用的 App,而當問題不屬於任何明確的子規則時,就會用 4.0。 這段文字沒有給任何量化標準。實務上的參考是 Human Interface Guidelines,也就是 Apple 的設計規範。
最常見的 4.0 退件情況
以下是我在 Apple 論壇公開訊息中找到的四種情況,附上 Apple 引用的用語。
| 情況 | Apple 的用語 | 修正方式 |
|---|---|---|
| iPad 上畫面擁擠 | 「crowded」 | 彈性版面配置 |
| 文字難以閱讀 | 「hard to read type」 | 採用 HIG 字級 |
| 登入跑到 Safari | 「taken to Safari」 | 在 App 內登入 |
| Sign in with Apple | 重複要求姓名 | 使用已提供的姓名 |
iPad 上畫面擁擠或被截斷
典型訊息,2025 年 9 月公開:「Parts of the app's user interface were still crowded, laid out, or displayed in a way that made it difficult to use the app when reviewed on iPad Air (5th generation) running iPadOS 26.0.」後面還說明 App 只用到螢幕的一部分(論壇討論串)。
原因在於規則 2.4.1:「iPhone apps should run on iPad whenever possible.」根據 Expo 的 App 設定,ios.supportsTablet 預設為 false。這時你的 iPhone App 會以相容模式在 iPad 上執行,顯示在 iPhone 尺寸的視窗裡。把 App 設成只支援 iPhone,並不能讓它免於在 iPad 上被測試。 Solys 的 Demo 就是在 iPad Air 上變得完全過不了關,這個案例我在 guideline 2.1 的指南裡有詳細說明。
有兩條路。第一,真正支援 iPad,讓版面隨可用空間調整。Apple 的設計規範要求依照尺寸類別(size class)決定版面,而不是依裝置型號。第二,維持只支援 iPhone,但每個畫面都必須在相容模式視窗裡正常顯示。
文字難以閱讀
訊息,2025 年 1 月公開:「Your app included hard to read type or typography.」Apple 在裡面提醒,使用者期待 App「simple, refined, and easy to use」(論壇討論串)。
Apple 的字體規範給了 iOS 的參考值:預設 17 點,最小 11 點。無障礙規範要求 17 點以下的文字對比度至少 4.5:1,觸控區域預設 44 x 44 點。
如果你像我一樣,為了讓各裝置的換行位置一致而在小螢幕上縮小字體,有個陷阱要注意:確認你最小的文字在 iPhone SE 上縮小後仍至少有 11 點。
登入被導向 Safari
訊息,公開在 Apple 論壇:「We noticed that the user is taken to Safari to sign in or register for an account, which provides a poor user experience.」Apple 要求在 App 內完成註冊和登入,並建議使用內嵌的 Safari 視圖。
用 Expo 的話,expo-web-browser 可以在不離開 App 的情況下滿足這兩種需求:openAuthSessionAsync 會在模態視窗中開啟驗證工作階段,openBrowserAsync 則在內嵌 Safari 視圖中顯示網頁。相反地,用 Linking.openURL 開啟登入頁會把使用者送到 Safari App。至於要提供哪些登入方式,那是另一條規則 4.8 的範圍。
Sign in with Apple 整合不當
訊息,2024 年 5 月公開:「Your app requires users to provide their name after using Sign in with Apple. This information is already provided by the Authentication Services framework.」(論壇討論串)。
expo-apple-authentication 的文件說明了這個陷阱:姓名和 email 只會在第一次登入時提供。請立刻把它們存起來,不然你會忍不住再問使用者一次。另外要使用函式庫提供的按鈕:顏色用 buttonStyle 設定,圓角用 cornerRadius,絕對不要用 style。
4.0、4.2、4.3:三種別搞混的設計類退件
| 規則 | 評判的重點 | 修正方式 |
|---|---|---|
| 4.0 | 介面 | 修正畫面 |
| 4.2 | App 的實用性 | 加入原生內容 |
| 4.3 | 相似度 | 換一個概念 |
4.2 Minimum Functionality 要求功能、內容和介面要讓 App 提升到「beyond a repackaged website」的程度。它和 4.0 的界線很模糊:包成 App 的網站可能兩條都會吃到。如果你的 App 缺乏實質內容,光修畫面是不夠的。
4.3 針對的是抄襲和飽和的類別:我在 guideline 4.3 Design Spam 的指南中詳細說明了它的兩個條款。介面再精緻,也救不了一個跟其他一千個長得一樣的 App。
送審前的視覺檢查表
這是我每次送審都會加上的步驟。在我的 App 裡,每個畫面都以最大的 iPhone 為基準設計,再在較小的裝置上用單一比例縮小:比例相同,換行位置也相同。接著我把畫面並排比較:iPhone SE、標準 iPhone、最大的 iPhone,再加一台 iPad 看相容模式。
| 檢查項目 | 裝置 | 必須符合的條件 |
|---|---|---|
| 首次啟動 | iPhone SE | 沒有任何東西被截斷 |
| 完整 Onboarding | iPad | 每個按鈕都按得到 |
| 鍵盤開啟 | iPhone SE | 輸入欄和按鈕都看得到 |
| 放大文字 | 標準 iPhone | 沒有文字被截斷 |
| 深色模式 | 全部 | 所有文字都清楚可讀 |
| 安全區域 | 最大尺寸 | 沒有東西被 Dynamic Island 擋住 |
| Paywall | iPhone SE | 價格和連結都看得到 |
| 登入 | iPad | 一直留在 App 內 |
三點補充:
- 放大文字。 Apple 的字體規範提供了一個簡單測試:在 Settings > Accessibility > Display & Text Size 中開啟最大的文字尺寸,然後確認所有內容仍然可讀。
- 深色模式。 Apple 的深色模式規範要求 App 在兩種外觀下都要清楚可讀。如果你沒設定
userInterfaceStyle,Expo 預設會套用light。Solys 跟隨手機的設定,TradaZen 固定深色,Nolera 固定淺色:三種情況下,我都會測試實際顯示的外觀。 - 安全區域。 內容不能跑到 Dynamic Island 或主畫面指示條底下。Expo 在它的安全區域指南中有詳細說明做法。
在 Mac 上,模擬器可以用指令列設定,讓這份檢查表能快速重跑:
xcrun simctl ui booted appearance dark
xcrun simctl ui booted content_size accessibility-extra-extra-extra-large
xcrun simctl io booted screenshot ecran-se-sombre.png
在實機上,我會用 TestFlight 的 build 再跑一次同樣的流程。方法說明:這份檢查表是我自己根據我的 App 被退件的經驗整理的,不是 Apple 提供的清單。它能減少意外,但不保證一定通過。
被 4.0 退件該怎麼回覆?
- 找出訊息中提到的裝置和版本,然後在模擬器中開啟同一個型號。
- 修正所有出現的地方。 典型訊息會要求你「address all instances」,不只是截圖中的那個畫面。
- 送出新的 build:審核人員測試的是打包在 App 裡的程式碼。
- 附上截圖回覆,截圖要在同一台裝置上拍,並透過回覆 App Review 的訊息送出。
- 有把握再申訴:Apple 允許你向 App Review Board 提出申訴,每次被退件的送審只能申訴一次。
我會用的範本,請自行調整:
Hello,
Thank you for your feedback regarding Guideline 4.0.
We reproduced the issue on [device] running [OS version].
Changes in build [X]:
- [Screen]: [what was crowded or hard to read], now [fix].
- [Screen]: [fix].
We also checked every screen on iPhone SE, a standard
iPhone, the largest iPhone and iPad, with larger text
sizes and Dark Mode.
Attached: screenshots of the updated screens on [device].
Best regards,
準備送審,避開設計類退件
Review Kit 收錄了我的送審前檢查清單(其中包括關於 iPad 的規則 2.4.1),以及會幫你檢查專案的 Claude Code skills。如果想要真人幫你看,跟我預約一小時:我們會透過視訊,在多種尺寸上打開你的畫面。被退件後的完整處理流程,請看 App 被 Apple 退件這一頁。
正在準備你的第一次上架?來做免費診斷:它會幫你把步驟排好順序,並寄給你我的 Apple 防退件檢查清單。
常見問題
退件訊息中的「Guideline 4.0 - Design」是什麼意思?
Apple 認為你的介面低於應有水準,但沒有指向某條明確的子規則:畫面擁擠、文字難讀、登入流程被認為體驗不佳。訊息通常會寫出使用的裝置,也常會附上截圖。
我的 App 只設定支援 iPhone,為什麼 Apple 會在 iPad 上測試?
因為規則 2.4.1 要求 iPhone App 盡可能要能在 iPad 上執行。你的 App 會以相容模式在 iPad 上開啟,顯示在 iPhone 尺寸的視窗中,而每個畫面都必須在那裡仍然可以正常使用。
被 4.0 退件後需要送新的 build 嗎?
是的,大多數情況都需要。審核人員測試的是首次啟動時打包在 App 裡的程式碼,遠端推送的修正他可能看不到。這部分我在 guideline 2.1 的指南中有說明。
一定要支援深色模式才能通過審核嗎?
審核規範的文字並沒有強制要求。設計規範則提醒,使用者會期待 App 跟隨他們的設定。如果你像 Expo 允許的那樣強制使用淺色或深色,就測試那個外觀。如果你跟隨手機的設定,兩種都要測。
被 4.0 退件可以申訴嗎?
可以,如果你認為 App 符合規範,可以向 App Review Board 申訴。Apple 要求提出明確的理由,每次被退件的送審只能申訴一次,而且要先回覆對方要求補充的資訊。

