Le Motif de Rejet (Guideline 2.3.1 - Hidden or Undocumented Features)
Toute fonctionnalité de votre application doit être visible, testable et documentée. Si Apple découvre que vous avez caché une fonctionnalité (qui s'active par exemple via une mise à jour serveur à distance après la validation), votre compte développeur risque la suspension.
Ce qui est considéré comme caché
- Les commutateurs à distance (Feature Flags) : Activer un système de paiement alternatif (ex: Stripe) à distance une fois l'application validée (contournement des 30% d'Apple).
- Easter Eggs majeurs : Un mini-jeu caché ou un module entier non mentionné dans la description.
- Mises à jour de code invasives : Télécharger de nouvelles fonctionnalités JavaScript critiques via le web sans passer par les mises à jour de l'App Store (bien que des outils comme Capacitor Updater ou Ionic Appflow soient tolérés pour des corrections de bugs mineurs, ils ne doivent pas modifier le but de l'application).
La Solution
- Soyez transparent : Si vous utilisez un système de Feature Flags (ex: LaunchDarkly), assurez-vous qu'ils soient activés pour le testeur Apple afin qu'il voit l'application dans son entièreté.
- Ne jouez pas avec les paiements : N'essayez jamais de cacher un lien vers une plateforme de paiement externe. Apple effectue des audits réguliers des applications même après leur publication.