Le Motif de Rejet (Guideline 4.2 - Minimum Functionality)
C'est le cauchemar des applications PWA et des sites convertis trop rapidement. Apple stipule : "Votre application doit inclure des fonctionnalités, du contenu et une interface utilisateur qui l'élèvent au-delà d'un simple site web repakagé."
Si votre application Capacitor se contente d'afficher une simple vue web sans interagir avec l'appareil, elle sera rejetée. C'est le cas lorsque l'on exporte directement des projets générés par des agents IA comme Replit Agent ou basés sur des maquettes Relume AI sans adaptation native.
Les signes qui alertent Apple
- Navigation web classique : Des liens soulignés, pas de gestes de balayage (swipe to go back), pas de barre de navigation native.
- Zéro hardware : L'application n'utilise ni l'appareil photo, ni le GPS, ni les notifications Push.
- Pas de fonctionnement hors-ligne (Offline) : Si l'utilisateur perd sa connexion et que l'application affiche l'erreur navigateur classique (Dinosaure ou "Cannot connect to server").
La Solution pour Capacitor
- Intégrez des fonctionnalités natives : Ajoutez des Notifications Push (Firebase ou APNs), utilisez le Haptic Feedback (
@capacitor/haptics) pour les boutons, ou le système de partage natif (@capacitor/share). - Gérez le mode Hors-ligne : Utilisez le stockage local (SQLite, IndexedDB) ou Capacitor Preferences pour cacher (cache) les données et afficher un écran "Mode hors-ligne" élégant plutôt qu'un écran d'erreur blanc.
- Design iOS-like : Assurez-vous que vos boutons, vos alertes (Dialogs) et votre typographie respectent les Human Interface Guidelines d'Apple. Par exemple, utilisez des
Action Sheetsnatifs au lieu de modales web.