App Store Connect 顯示 iOS App 1.0.20260628 (1) 為 Item Ready to Submit,與 iOS 版本一起送出審核。
Xcode Organizer — 封存 1.0.20260628 (1),驗證通過(點擊放大)App Store Connect — iOS App 1.0.20260628 Ready to Submit(點擊放大)
2026 · 07 · 02❌ 第 1 次被拒
送審第 4 天,App Store Connect 來信:「There's an issue with your Bloomling: Kids Video & Learn (iOS) submission.」——審核結果出爐,被拒。共有兩點需處理:一個是年齡分級的中繼資料對不上,一個是兒少類別的隱私問卷需補答。
⚠️ Guideline 2.3.6 — Accurate Metadata:年齡分級標了「家長控制」卻找不到
App 的年齡分級(Age Rating)內容描述勾選了包含 In-App Controls / Parental Controls,但審核員在 App 內找不到對應的「家長控制」或「年齡驗證」機制。 處理方式:若功能存在就回信指出位置;否則到 App Store Connect 的 App Information 把 Age Rating 的「Parental Controls」改成 None,讓分級描述與實際功能一致。
⚠️ Guideline 2.1 — Information Needed:兒少類別隱私問卷(1.3)
審核前需先說明 App 如何符合 Guideline 1.3(兒童類別),Apple 要求回答四個問題並在 App Store Connect 回覆後才會繼續審核:
是否含第三方分析?收集哪些資料?
是否含第三方廣告?(兒童 App 需提供廣告網路的公開政策連結)
資料是否分享給第三方?用途與儲存位置?
是否為分析/廣告以外的目的收集使用者或裝置資料?
回覆方向:Bloomling 全程離線、零廣告、無第三方分析 SDK、不收集任何資料——四題答案皆為「否」,將於 App Store Connect 據實回覆。
An indie developer's honest App Store submission log
Bloomling is a walled-garden browser for children, built solo from scratch to launch. This page logs every milestone of its Apple App Store submission — 17 days, 5 submissions, 4 rejections, even a forced rename, before it was approved on 2026/7/15. Written down in full for fellow indie developers on the same path.
2026 · 06 · 28🚀 First Submission
Bloomling v1.0.20260628 (build 1) was archived in Xcode, passed Apple's validation, and was attached to the version in App Store Connect — ready for review. Strict allow-list browsing, a parental gate, distraction-free embeds, cross-device setup, and built-in activities — all offline, zero ads, no data collected. Its first step into iOS review.
Xcode Organizer shows Bloomling 1.0.20260628 (1) archived at 10:51 PM on Jun 28 with status Validation succeeded — Your app successfully passed all validation checks.
② Attached & ready to submit (App Store Connect)
App Store Connect shows iOS App 1.0.20260628 (1) as an Item Ready to Submit, sent for review together with the iOS version.
Xcode Organizer — archive 1.0.20260628 (1), validation succeeded (click to enlarge)App Store Connect — iOS App 1.0.20260628 Ready to Submit (click to enlarge)
2026 · 07 · 02❌ 1st Rejection
Four days into review, App Store Connect wrote back: "There's an issue with your Bloomling: Kids Video & Learn (iOS) submission." — the verdict is in, and it's a rejection. Two things to fix: an Age Rating metadata mismatch, and a Kids-category privacy questionnaire to answer.
⚠️ Guideline 2.3.6 — Accurate Metadata: Age Rating declares Parental Controls that couldn't be found
The app's Age Rating content description indicates it includes In-App Controls / Parental Controls, but the reviewer couldn't find Parental Controls or Age Assurance mechanisms in the app. Fix: if the feature exists, reply pointing to where it is; otherwise set the Age Rating "Parental Controls" selection to None on the App Information page in App Store Connect so the rating matches the app.
⚠️ Guideline 2.1 — Information Needed: Kids-category privacy (1.3)
Before review can proceed, Apple needs details on how the app complies with Guideline 1.3 (Kids category), answering four questions in App Store Connect:
Any third-party analytics? What data is collected?
Any third-party advertising? (kids apps must link the ad network's public policy)
Is data shared with third parties? For what purpose, stored where?
Any user/device data collected beyond analytics or ads?
Planned reply: Bloomling is fully offline, zero ads, no third-party analytics SDKs, and collects no data — all four answers are "No," to be stated in App Store Connect.
Submission ID: 910bd0e4-5ad3-42d3-91cf-b80e0475c3ce · Review device: iPad Air 11-inch (M3) · Version reviewed: 1.0.20260628 (1) · Review date: July 2, 2026
Status: 🔴 Reply & resubmit needed
App Store Connect email — an issue with the iOS submission needs attention (click to enlarge)
2026 · 07 · 04❌ 2nd Rejection
Age Rating fixed, privacy questionnaire answered, resubmitted — and bounced again two days later. This time it hit something more fundamental: the name, and whether this even counts as an app.
⚠️ Guideline 2.3.8 — "Kids" in the name, but not a Kids-category app
The app name was Bloomling: Kids Video & Learn. The word Kids implies the app is made specifically for children — but it wasn't submitted as a Kids category app. Two options only: strip every child-implying term from the name, subtitle, icon and screenshots, or resubmit as Made for Kids.
⚠️ Guideline 4.2 — Minimum Functionality: not "app-like" enough
Review found the app didn't provide enough content and features to be useful, unique and "app-like". For a walled-garden browser deliberately built to show only the pages a parent picked and block everything else, this one stings — intentional restraint read as insufficient functionality.
Version reviewed: 1.0.20260628 (1)
Status: 🔴 Rename + add functionality, resubmit
2026 · 07 · 06❌ 3rd Rejection
The hardest one. Not a wrong field somewhere — the premise of the product itself was questioned.
⚠️ Guideline 4.2 — "this is just a browser"
Review's words: the app only includes links, images, or content aggregated from the Internet with limited or no native functionality. Even though the content is curated for your users, "since it does not sufficiently differ from a web browsing experience, it is not appropriate for the App Store."
For a walled-garden browser that's nearly a catch-22: its whole value is "only the handful of URLs a parent picked". To pass, the app had to prove it does something a browser can't.
Status: 🔴 Rethink positioning & native features
2026 · 07 · 13❌ 4th Rejection
Renamed, native features added, resubmitted — and fell at the last hurdle: rights to third-party media.
⚠️ Guideline 5.2.3 — Legal: proof of rights for third-party streaming
The app was flagged for potentially providing unauthorized access to third-party audio or video streaming, catalogs and discovery services — i.e. the embedded YouTube videos and IG posts. Required: attach documentary evidence in App Review Information proving you hold all necessary rights or permissions for those third-party services. Review only continues once Apple validates the documents.
Submission ID: 910bd0e4-5ad3-42d3-91cf-b80e0475c3ce · Review device: iPad Air 11-inch (M3) · Version reviewed: 1.0.20260710 (4) · Review date: July 13, 2026
Status: 🔴 Attach rights documentation, submit again
2026 · 07 · 15🎉 Approved · Live
Submitted July 13. Two days later, an email with a different subject line: "Review of your Bloomling: Learn & Safe Web (iOS) submission is complete."
Congratulations! Review of your submission has been completed. It is now eligible for distribution.
17days
5submissions
4rejections
1approval
From the first submission on 6/28 to approval on 7/15, it was rejected four times: age-rating mismatch, the kids privacy questionnaire, "Kids" not allowed in the name, too little functionality, "it's just a browser", and proof of rights for third-party media. Even the name changed along the way — Bloomling: Kids Video & Learn became Bloomling: Learn & Safe Web.
Submitted: July 13, 2026 at 08:49 AM PDT · Approved: July 15, 2026
App Store Connect email — Congratulations, eligible for distribution (click to enlarge)
17 days, 5 submissions, 4 rejections. Writing it down isn't a complaint about Apple — every guideline has a reason behind it. It's so that anyone walking the same path knows: getting rejected four times is normal, not a sign you did something wrong. Fix it, send it again.