
Medication Tracker
A medication app for patients and caregivers. Schedules, reminders and refill tracking, built in Swift.
Apple's rejection messages quote a guideline number and very little else. Below are the ones we see most for apps built with AI tools and wrapped web apps, in plain words. If you'd rather hand it over, send us the rejection.
What Apple is saying: "This is a website in an app frame. Why does it need to be an app?"
Why it happens: the app loads your web app and does nothing a browser couldn't.
How to fix it: give it things only an app can do, done properly. Native navigation, push notifications, a real offline screen, Sign in with Apple, camera or biometrics where they make sense. In your review notes, explain what the app does that the website doesn't. More on Lovable apps and 4.2.
What Apple is saying: something about how you collect or handle personal data doesn't meet their rules.
The usual causes:
How to fix it: add in-app account deletion (and if you use Sign in with Apple, revoke the Apple token when the account is deleted), write clear permission reasons, and let people look around before signing up where it makes sense.
What Apple is saying: the app uses an iOS feature or API in a way they don't allow.
Why it happens: often a plugin pulls in a framework the app doesn't use, a capability (like HealthKit or background modes) is switched on without a matching feature, or the app relies on something non-public.
How to fix it: remove unused capabilities and plugins, make sure every switched-on capability is visibly used, and update to current SDKs.
What Apple is saying: you offer a third-party login (like Google) but no option that keeps the user's email private.
How to fix it: add Sign in with Apple, or another login that meets Apple's privacy conditions, alongside the existing options.
What Apple is saying: you sell digital content or features inside the app without using Apple's in-app purchase.
How to fix it: use Apple's in-app purchase for digital goods and subscriptions (we usually use RevenueCat to manage both stores). Physical goods and real-world services can still use Stripe.
What Apple is saying: your app name, subtitle, keywords or screenshots break their metadata rules.
Why it happens: prices in the name, other platform names, or keyword lists in the subtitle.
How to fix it: clean names and accurate screenshots of the real app.
What Apple is saying: the reviewer hit a crash, a broken link, placeholder content, or couldn't log in.
How to fix it: test on a real device, and always give the reviewer a working demo account in the review notes.
What Apple is saying: the app looks too similar to many others, often because it came from a template.
How to fix it: this one is harder. It needs a clearer, different purpose and design. We will tell you plainly if we think it can pass.
Price: fixed per rejection, quoted after we see it.
Want the whole app checked before you submit again? Take the whole app through review with Ship It.
“Immersive Mobile Designs did an excellent job on our iOS app. Their team was responsive, highly skilled, and quick to implement changes whenever needed. The entire process felt smooth and professional from start to finish.”