App / Flutter / Launch

2026 Flutter App 上架檢查表:被 Apple 退件 10 次後留下的發布關卡

PEAKSTW 是我實際開發、送審並營運的跨平台 App。十輪退件沒有換來「審查玄學」,反而讓我確定:多數延誤來自帳號、訂閱、審查存取與真機邊界沒有被放進同一個 release gate(發布關卡)。

· 約 10 分鐘 · 可列印檢查表

只想看這次適用的項目?直接開啟免費的Flutter App 上架清單產生器,選 iOS/Android、首次上架/更新、帳號與購買功能,就會得到免登入、可下載 Markdown 的個人化清單。
使用範圍:這份清單偏向有登入、雲端資料或訂閱功能的 Flutter/跨平台 App。政策會更新;本文已在 2026 年 8 月 13 日依 Apple 與 Google 官方文件校準,但每次送審前仍應重讀官方規則。這不是法律意見,也不保證一定通過審查。

送審前 15 分鐘:先跑這 14 項

一、帳號與隱私:最容易「功能正常,政策不過」

帳號刪除不是多放一個按鈕

Apple 的規則是:只要 App 支援建立帳號,就要讓使用者在 App 內發起刪除;只提供暫停或停用帳號不夠。Google Play 還要求在 Data safety 表單提供網頁資源,讓已解除安裝或無法進 App 的使用者也能要求刪除。

第三方登入要看「等價能力」,不是只看按鈕數量

Apple Guideline 4.8 對使用第三方或社群登入作為主要帳號驗證的 App,要求另一個符合資料最小化、可隱藏電子郵件、未經同意不做廣告追蹤的等價登入服務;規則也列出企業、教育、政府身分系統等例外。不要只看到「有 Google 登入」就機械式加按鈕,應先確認自己的情境是否落在規則或例外內。

二、訂閱與內購:測權益,不只測付款畫面

Apple 對數位內容與外部購買連結的規則已因 storefront(商店地區)與 entitlement(特別許可)而有差異,不能再用一句「所有數位內容只能 IAP」概括。最安全的做法,是在送審當天依目標地區核對 Guideline 3.1,而不是複製幾年前的文章。

層次必驗內容常見假綠燈
商品目錄商品可售、地區與價格正確,前端顯示商店回傳的 localized price(在地化價格)後台有商品,所以認為所有測試帳號都買得到
購買流程購買、取消付款、pending(待處理)、重複點擊與中斷後恢復只測一次 sandbox 成功交易
權益重新安裝、換機、恢復購買、到期、退款、撤銷、升降級付款成功就永久把本機旗標設成 Pro
伺服器簽章驗證、冪等處理、過期與亂序事件、補抓遺漏通知端點回 200,就當成訂閱狀態一定同步

Google Play 的 productId 陷阱

Google 現行模型允許同一個 subscription(訂閱商品)下面配置多個 base plan 與 offer。這代表月繳、年繳或優惠不一定各有獨立 productId;若你的前端或後端只用 productId 當唯一鍵,可能把不同價格方案覆蓋成同一筆。

Server notification 要測到「事件被正確處理」

Apple 已把 App Store Server Notifications V1 標成 deprecated(已棄用),新整合應使用 V2。官方 Server API 能發送 TEST 通知並查詢結果;驗收不能停在「URL 已填好」,還要確認伺服器驗證簽章、更新對的使用者、重送不會重複發權益,失敗時能追查。

三、審查存取:不要讓 reviewer 猜你的產品

Apple 的送審前清單要求 metadata 完整、聯絡資訊有效、後端服務在線;有帳號功能時,應提供有效 demo account 或完整 demo mode。實務上,審查者進不去核心流程,通常不會替你排查原因。

四、真機與邊界:模擬器不會替你經歷現實

五、Google 新個人帳號:12 人、14 天有適用條件

Google Play 的封閉測試門檻不是所有帳號都相同。官方目前寫的是:2023 年 11 月 13 日後建立的新個人開發者帳號,要先讓至少 12 位測試者連續 14 天保持 opted-in(加入測試),再申請 production access(正式版權限),並回答測試、回饋與上線準備問題。

六、把「送出」改成可稽核的 release gate

十輪退件真正教我的,是每修一個問題就重新送審,會讓下一個舊問題在下一輪才浮出來。現在我會把同類風險一次掃完,並留下可重現證據。

這份清單不能保證什麼

它不能保證一次通過,也不能取代 App Review Guidelines、Play policy(Google Play 政策)或法律顧問。App 類型、地區、資料種類、醫療/金融等受管制領域,都可能有額外要求。能保證的只有一件事:當審查結果回來,你知道自己送了哪個版本、驗過什麼、哪個假設錯了,不必從聊天紀錄裡拼湊現場。

若你想看這份清單從哪裡來,可以讀PEAKSTW 被 Apple 退件 10 次的完整上架記。

不想手動刪掉不適用項目,可直接使用免費的2026 App 上架清單產生器,依平台、首次上架/更新、帳號與訂閱條件產生可勾選、列印及下載的 Markdown 清單。

卡在上架、訂閱或審查來回?

不油膩數位工作室做 Flutter、iOS、Android、訂閱與後端整合,也能把上架檢查、真機測試與正式環境證據一起交付。

到工作室首頁聯絡我,或看更多實戰文章。