Soumettre votre première application à l'App Store ou à Google Play peut sembler débordant. Avec des lignes directrices en constante évolution et une application plus stricte en 2026, obtenir votre application approuvée nécessite une attention minutieuse aux détails. Ce guide complet vous guide tout au long de tout ce dont vous avez besoin pour passer en revue votre première soumission pour les deux plateformes iOS et Android.
Comprendre le processus d'examen en 2026
Les deux Apple et Google ont considérablement renforcé leurs processus de revue ces dernières années, avec un accent particulier sur la vie privée, la sécurité et l'expérience utilisateur. Comprendre ces changements est crucial pour les développeurs débutants.
Échéancier de la Revue de l'App Store iOS
- Revue Standard: 24-48 heures
- Périodes de Pointe: 3-5 jours (surtout pendant les saisons de vacances)
- Week-ends: Aucune revue traitée
- Revue Accélérée: Disponible pour les corrections de bogues critiques (doit être demandée via App Store Connect)
Conseil Pro: Soumettez-vous tôt dans la semaine (lundi-mardi) pour éviter les retards du week-end. Les soumissions du lundi sont généralement examinées le mercredi.
États de la connexion à l'App Store Vous verrez ceux-ci
- Préparez-vous à la soumission: Votre build ou vos métadonnées sont encore en cours de préparation
- En attente de la révision: Apple a votre soumission en file d'attente
- En cours de révision: L'équipe de révision vérifie activement l'application
- En attente de la mise à disposition du développeur: Approuvé, mais en attente de votre choix de mise à disposition manuelle
- Rejeté / Problèmes non résolus: Apple a besoin de changements avant l'approbation
Chronologie de la révision de la Google Play Store (Mise à jour 2026)
- Examen Initial: 3-7 jours (beaucoup plus long que les années précédentes)
- Porte de Test Fermée: 14 jours minimum pour les comptes de Play Console personnels nouvellement créés avant que vous puissiez demander l'accès à la production
- Examen de Production Après Test: Généralement 3-7 jours supplémentaires après que la porte de test fermée soit complétée
- Mises à Jour des Applications Existantes: 1-3 jours
- Violations de Politique: Peut s'étendre à 14+ jours si une revue supplémentaire est déclenchée
Mise à Jour Importante: Google exige désormais un test beaucoup plus rigoureux pour certains comptes de Play Console nouveaux, que nous couvrirons en détail ci-dessous.
Configuration de Compte Apple Developer
Avant votre première mise en ligne iOS, assurez-vous que le côté Apple est correctement configuré :
- Inscrivez-vous au Programme Apple Developer
- Activez l'authentification à deux facteurs pour le compte Apple utilisé pour l'inscription
- Choisissez le type de membre correct :
- Individuel / Propriétaire unique: votre nom personnel légal devient le nom du vendeur sur l'App Store
- Organisation: nécessite une entité juridique, un numéro D-U-N-S, un site web public et une personne ayant l'autorité de lier la société aux accords d'Apple
- Utilisez des noms légaux lors de l'inscription. Les pseudonymes ou les noms de société dans les champs prénom/ nom peuvent retarder l'approbation
- Après l'approbation de l'inscription, connectez-vous à App Store Connect et créez l'enregistrement de l'application avec l'ID de bundle final, le nom de l'application, le SKU et la langue principale



Important: Apple changes minimum SDK requirements over time. As of 28 avril 2026, les applications téléchargées sur App Store Connect doivent utiliser la version iOS et iPadOS 26 SDK ou ultérieure.
Exigence de test Android critique
C'est cette modification qui surprend le plus les éditeurs Android débutants :
Exigence de 12 testeurs pour les comptes Android personnels nouveaux
Si votre compte développeur Google Play est un Compte personnel créé après le 13 novembre 2023Vous devez terminer une période de test fermé avant que l'application puisse passer en production :
Exigences:
- Minimum 12 Testeurs: Vous devez recruter au moins 12 testeurs optés
- Période de test de 14 jours: L'application doit rester en test fermé pendant au moins 14 jours consécutifs
- Demande d'accès à la production: Après la période de test, vous devez encore soumettre une demande d'accès à la production dans le console de Play
- Collecte de commentaires: Vous devriez documenter les problèmes trouvés, les correctifs apportés et la façon dont les testeurs ont utilisé l'application
Comment configurer votre piste de test
-
Créer une piste de test fermée
- Accédez au console de Google Play
- Naviguez vers Test and release > Testing > Test fermé
- Créer une nouvelle mise à jour dans la piste de test fermée
- Télécharger votre Android App Bundle (
.aab)
-
Recruter vos testeurs
Où trouver des testeurs :
- Amis et famille (point de départ le plus facile)
- Communautés de développeurs (Reddit’s /r/androiddev, /r/betatests)
- Abonnés aux réseaux sociaux
- Plateformes de test bêta (BetaList, BetaTesting.com)
- Étudiants universitaires (si vous avez des relations)
Importants: Assurez-vous que les testeurs :
- Possèdent des comptes Gmail valides
- Utilisent effectivement des appareils Android
- Restent optés-in pendant toute la période de 14 jours
-
Invitez des Testeurs
- Créez une liste de testeurs dans le Console de Play
- Ajoutez les adresses e-mail des testeurs
- Partagez l'URL d'opt-in avec vos testeurs
- Envoyez des rappels pour vous assurer qu'ils installent et utilisent l'application
-
Surveillez l'activité de test
- Vérifiez la Console de Play pour les nombres d'installation
- Suivre les rapports de crash et les ANR (Application Not Responding)
- Collecter des commentaires de testeurs
- Réparer les problèmes critiques avant la promotion
-
Promouvoir vers la Production
- Après 14 jours avec 12+ testeurs inscrits
- Demander l'accès à la production depuis le tableau de bord du console de Play
- Réviser tous les rapports de crash et les commentaires
- Créer une mise à jour de production et soumettre à la revue finale
Pourquoi Google a mis en œuvre cela
Google a introduit cette exigence pour :
- Réduire la publicité d'applications de mauvaise qualité
- S'assurer que les applications sont correctement testées avant d'atteindre les utilisateurs
- Identifier les applications malveillantes à travers les modèles d'utilisation du monde réel
- Améliorer la qualité globale de la boutique Play
Vérification de la réalité: Cela ajoute au moins 2-3 semaines à votre calendrier de lancement. Planifiez en conséquence et commencez à recruter des testeurs tôt.
Exigences d'authentification et de connexion
L'une des raisons de rejet les plus courantes est une mise en œuvre incorrecte des systèmes d'authentification, en particulier les connexions sociales.
La exigence de connexion Apple (Critique pour iOS)
La règle d'Apple: Si votre application propose toute option de connexion sociale tierce (Google, Facebook, Twitter, etc.), vous devez également proposer la connexion avec Apple comme option.
Cela s'applique à:
- Google Sign-In
- Connexion Facebook
- Connexion Twitter/X
- Connexion LinkedIn
- Toute autre plateforme de connexion tiers
Cela ne s'applique pas à:
- Authentification par courriel/mot de passe uniquement
- Systèmes d'identification de la fonction publique
- Systèmes SSO d'entreprise (lorsque l'application est destinée à cette entreprise spécifique)
- Systèmes d'authentification des fournisseurs d'éducation
Implémenter la connexion avec Apple
Si vous utilisez la connexion sociale, voici ce que vous devez mettre en œuvre :
import { SignInWithApple } from '@capacitor-community/apple-sign-in';
async function signInWithApple() {
try {
const result = await SignInWithApple.authorize({
clientId: 'com.yourapp.service',
redirectURI: 'https://yourapp.com/auth/callback',
scopes: 'email name',
state: '12345',
nonce: 'nonce',
});
// result contains:
// - identityToken
// - authorizationCode
// - email (may be null if user previously authorized)
// - givenName
// - familyName
// Send to your backend for verification
await verifyAppleToken(result.identityToken);
} catch (error) {
console.error('Apple Sign In failed:', error);
}
}
Considérations importantes:
-
Confidentialité du courrier électronique: Les utilisateurs peuvent choisir de cacher leur adresse e-mail. Apple fournit un relais e-mail privé (par exemple,
abc123@privaterelay.appleid.com). Votre application doit gérer cela. -
Utilisateurs pour la première fois vs Utilisateurs régénérés: Apple ne fournit que les détails de l'utilisateur (nom, adresse e-mail) lors de la première autorisation. Enregistrez ces informations car les réinscriptions ultérieures ne les incluront pas.
-
Conception du bouton: Apple fournit des lignes directrices de conception strictes pour le bouton Sign in with Apple. Utilisez leurs actifs officiels.
-
Vérification côté serveur: Vérifiez toujours le jeton d'identité sur votre serveur de backend, ne faites jamais confiance aux jetons côté client seuls.
Exigences de connexion sociale pour Android
Même si Android n'exige pas un fournisseur spécifique comme iOS le fait, Google a des lignes directrices :
Exigences de connexion Google:
- Doit utiliser la connexion Google officielle SDK
- Doit suivre les directives de branding de Google
- Doit être l'option principale si vous l'offrez
Meilleure pratique pour les plateformes croisées: Proposez les mêmes options de connexion sur les deux plateformes pour une cohérence :
- Courriel/mot de passe
- Se connecter avec Apple (disponible uniquement sur iOS, ou sur Android si vous supportez la connexion web d'Apple)
- Se connecter avec Google
- Autres options de connexion sociale (Facebook, Twitter, etc.)
Exigences de compte de démonstration
Critique pour la revue: Si votre application nécessite un mot de passe, vous devez fournir des informations de connexion fonctionnelles dans les notes de revue de l'application. __CAPGO_KEEP_0__ Erreurs courantes
Demo Account Information:
Username: reviewer@demo.com
Password: ReviewTest123!
OR
Test Phone: +1 555-0123
Test OTP: 123456 (static for review)
Notes:
- This account has full premium features enabled
- All payment flows work in sandbox mode
- Account will reset daily
Fournir des informations de connexion expirées:
- Le compte de démonstration n'a pas accès à toutes les fonctionnalités
- Ne pas mentionner comment contourner la vérification du téléphone
- Oublier de mentionner les détails de paiement du compte de démonstration
- Exigences de confidentialité et de droit
Les deux magasins d'applications exigent désormais des politiques de confidentialité et des conditions d'utilisation accessibles avant que votre première soumission soit approuvée.
must before your first submission is approved.
Politique de confidentialité Requirements
Votre politique de confidentialité doit :
-
Être Accessible au Public
- Hébergé sur une URL publique (pas derrière un mot de passe)
- Lisible dans les navigateurs web standards
- Disponible dans les mêmes langues que votre application
-
Aborder Ces Sujets Mandatoya:
- Quels données vous collectez (soyez spécifique)
- Comment vous utilisez les données collectées
- Si les données sont partagées avec des tiers
- Durée de conservation des données
- Droits des utilisateurs (accès, suppression, portabilité)
- Informations de contact pour les demandes de confidentialité
- Confidentialité des enfants (si l'application est destinée aux utilisateurs de moins de 13/16 ans)
-
Se connecter en application
- Accessible depuis les paramètres ou l'écran de compte
- Doit être accessible en un seul clic (et non enfoui dans les menus)
- Où s'ouvrir dans le navigateur par défaut ou dans l'application
Où héberger votre politique de confidentialité
Option 1 : Votre site web (Recommandé)
https://yourapp.com/privacy-policy
https://yourapp.com/terms-of-service
Option 2 : Pages GitHub (Gratuit)
https://yourusername.github.io/app-privacy-policy
Option 3 : Générateurs de politiques de confidentialité (Démarrage Rapide)
- Termes
- Politiques de Confidentialité sur PrivacyPolicies.com
- Politique de Confidentialité Gratuite sur FreePrivacyPolicy.com
Important: Même si les générateurs sont acceptables pour le démarrage, assurez-vous que la politique reflète avec précision vos pratiques réelles de données. Les modèles génériques qui ne correspondent pas à votre application seront signalés.
Exigences des Conditions Générales et Particulières
Même si ce n'est pas toujours obligatoire, il est fortement recommandé et requis si :
- Vous proposez des achats ou des abonnements en ligne
- Vous avez du contenu généré par les utilisateurs
- Vous fournissez un service au-delà de la fonctionnalité de base de l'application
- Vous souhaitez une protection juridique
Doit inclure:
- Politique d'utilisation autorisée
- Conditions de résiliation du compte
- Limitation de responsabilité
- Droits de propriété intellectuelle
- Procédure de résolution de litiges
- Politique de remboursement (en particulier pour les achats intégrés dans l'application)
Mise en œuvre dans l'application
// Settings or Account Screen
function LegalLinks() {
return (
<div className="legal-section">
<h3>Legal</h3>
<a
href="https://yourapp.com/privacy-policy"
target="_blank"
rel="noopener noreferrer"
>
Privacy Policy
</a>
<a
href="https://yourapp.com/terms-of-service"
target="_blank"
rel="noopener noreferrer"
>
Terms of Service
</a>
<a
href="https://yourapp.com/contact"
target="_blank"
rel="noopener noreferrer"
>
Contact Us
</a>
</div>
);
}
Exigences relatives aux métadonnées de l'App Store
Les deux magasins exigent que vous fournissiez l'URL de la politique de confidentialité lors de la soumission de l'application :
iOS - App Store Connect:
- Informations sur l'application > Informations générales > URL de la politique de confidentialité
- Doit être HTTPS (HTTP sera rejeté)
- Sera affiché sur votre page de l'App Store
- Ajoutez une URL de support avec des informations de contact réelles pour les utilisateurs
- Terminez le questionnaire d'âge avant la soumission
Android - Console de l'App Store Google:
- Présence dans le magasin > Paramètres du magasin > Politique de confidentialité
- Requis pour tous les applications ciblant les enfants
- Très fortement recommandé pour toutes les applications
Étiquettes de nutrition de la vie privée (iOS)
iOS exige des déclarations de confidentialité détaillées dans un format de « label nutritionnel » :
Catégories que vous devez déclarer:
- Informations de contact: Adresse e-mail, nom, numéro de téléphone
- Informations financières: Informations de paiement, carte de crédit, compte bancaire
- Emplacement: Localisation précise ou grossière
- Contenu de l'utilisateur: Photos, vidéos, audio, messages
- Identifiants: ID de l'utilisateur, ID de l'appareil, ID publicitaire
- Données d'utilisation: Données d'interaction avec le produit, données publicitaires, journaux de crash
- Diagnostics: Données de crash, données de performance
Pour chaque type de données, spécifiez:
- Quelle est la finalité de la collecte
- Si elle est liée à l'identité de l'utilisateur
- Si elle est utilisée pour le suivi
- La finalité de la collecte
Erreur commune: Dire que vous n'avez pas collecté de données alors que votre SDK d'analytique le fait. Audit tous les SDK tiers pour leur collecte de données.
Section de sécurité des données Google Play
De même que sur iOS, Android exige une déclaration de sécurité des données :
Étapes:
- Allez dans le console de Play > Contenu de l'application > Sécurité des données
- Répondre aux questions sur la collecte de données
- Spécifier les types de données collectés
- Exposer les pratiques de sécurité (chiffrement, etc.)
- Fournir le lien de la politique de confidentialité
Critique: Cette information est juridiquement contraignante. La fausse représentation peut entraîner la suppression de l'application et la suspension du compte.
Raisons courantes de refus pour les premiers rejet
La compréhension de pourquoi les applications sont rejetées vous aide à éviter ces pièges :
1. L'application s'effondre ou ne démarre pas
Pourquoi cela se produit:
- Se tester uniquement sur un émulateur, pas sur un appareil réel
- Manque de gestion d'erreurs pour les échecs de réseau
- Points de terminaison API fixés par défaut qui sont inaccessibles
- Supposer des capacités spécifiques de l'appareil (caméra, GPS)
Comment Prévenir:
// Always implement proper error handling
async function loadData() {
try {
const response = await fetch('https://api.yourapp.com/data');
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
const data = await response.json();
return data;
} catch (error) {
// Show user-friendly error
showError('Unable to load data. Please check your connection.');
// Log for debugging
console.error('Data load failed:', error);
// Graceful degradation
return getCachedData();
}
}
Liste de Vérification de Test:
- Tester sur des appareils réels (minimum 2-3 modèles différents)
- Tester avec un réseau dégradé (utiliser Network Link Conditioner)
- Tester avec le mode avion
- Tester avec les permissions refusées
- Tester avec une installation fraîche (pas de données en cache)
2. Fonctionnalités de base manquantes ou endommagées
Pourquoi Cela Se Produit:
- Les fonctionnalités montrées dans les captures d'écran n'existent pas encore
- Le compte de démo n'a pas accès aux fonctionnalités annoncées
- Les fonctionnalités premium sont affichées mais pas implémentées
- Les placeholders « Prochainement » dans l'application
Comment Empêcher:
- N'envoyez que lorsque toutes les fonctionnalités annoncées sont complètes
- Assurez-vous que le compte de démo ait accès complet
- Supprimez ou désactivez les fonctionnalités incomplètes avant la soumission
- Mettez à jour les captures d'écran pour qu'elles correspondent exactement à la version actuelle
3. Contenu inapproprié pour la classification d'âge
Pourquoi cela se produit:
- La classification d'âge est fixée à 4+ mais l'application contient des fonctionnalités sociales
- La classification d'âge ne correspond pas au contenu réel
- __CAPGO_KEEP_0__ sans modération
- __CAPGO_KEEP_0__ vers du contenu externe non modéré
Comment définir la note d'âge correcte:
Notes d'âge iOS:
- 4+ (pas de contenu contestable)
- 9+ (contenu léger occasionnel)
- 12+ (contenu modéré)
- 17+ (contenu fréquent/intense)
Notes de contenu Android:
- Tout public
- Tout public 10 ans et plus
- Adolescent
- Majeur 17+
- Adultes seulement 18+
Important: Si les utilisateurs peuvent partager du contenu entre eux, vous avez besoin de :
- Système de modération de contenu
- Fonctionnalité de signalement/bloque
- Lignes directrices de la communauté claires
- Contrôle d'âge si nécessaire
4. Métadonnées trompeuses ou trompeuses
Pourquoi cela se produit:
- Le nom de l'application promet des fonctionnalités qui n'existent pas
- Captures d'écran de concurrents ou de maquettes
- Manipulation de commentaires ou de notes fictifs
- La description contient des superlatifs sans preuve
Exemples de métadonnées problématiques:
❌ Mauvais:
- Nom de l'application : « Meilleur suiveur de forme - #1 Application »
- Description : « L'application la plus incroyable, révolutionnaire créée jamais ! »
- Captures d'écran : Photos de stock génériques
✅ Bonne:
- Nom de l'application : « FitTrack - Journal de l'entraînement »
- Description : « Suivez vos entraînements avec des routines personnalisables et des tableaux de progression. »
- Captures d'écran : Écrans de l'application actuelle
5. Insuffisance des tests (surtout les tests fermés Android)
Pourquoi cela se produit:
- Passer par-dessus la période d'essai de 14 jours obligatoire
- Ne pas recruter suffisamment de testeurs
- Les testeurs ne utilisent pas réellement l'application
- Pas de suivi des crashs pendant les tests
Comment prévenir cela:
- Commencez à recruter des testeurs 3-4 semaines avant la date de lancement prévue
- Utilisez Firebase Crashlytics ou un outil similaire pendant les tests
- S'implique activement avec les testeurs (enquêtes, formulaires de feedback)
- Réparez les problèmes critiques avant de promouvoir vers la production
6. Les autorisations sans justification
Pourquoi cela se produit:
- Demande de localisation mais pas utilisé
- Autorisation de la caméra sans explication
- Accès aux contacts sans but clair
- Localisation en arrière-plan pour les applications non de navigation
Comment Corriger:
iOS - fichier Info.plist:
<key>NSCameraUsageDescription</key>
<string>Camera access is required to scan QR codes for quick login.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Location helps us show nearby fitness centers and outdoor running routes.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Photo library access lets you upload a profile picture and share workout photos.</string>
Android - Stratégie des autorisations:
<!-- Only request what you actually need -->
<uses-permission android:name="android.permission.CAMERA" />
<!-- Use when-in-use rather than always for location -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- Avoid if possible -->
<!-- <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" /> -->
Demande de permission de runtime:
import { Camera } from '@capacitor/camera';
async function takePicture() {
// Request with context
const permissionStatus = await Camera.requestPermissions();
if (permissionStatus.camera === 'granted') {
const photo = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: 'uri'
});
return photo;
} else {
// Explain why permission is needed
showDialog(
'Camera access required',
'To upload a profile picture, please enable camera access in Settings.'
);
}
}
Exigences spécifiques à iOS
Capture d'écran de l'App Store et prévisualisation
Tailles requises:
- iPhone 6.7 : 1290 x 2796
- 13” iPad : 2064 x 2752
- 12.9” iPad : 2048 x 2732
ImportantSi votre application prend en charge l'iPad, vous devez télécharger des captures d'écran iPad. N'étirez pas les captures d'écran iPhone pour les faire tenir dans les cases iPad.
Pratiques pour les captures d'écran:
- Doit montrer le contenu réel de l'application (pas de maquettes)
- Supprimez la barre de statut ou montrez un contenu réaliste
- Localisez pour toutes les langues prises en charge
- Évitez les surcharges de texte de surimpression
- Montrez les fonctionnalités clés dans les 2-3 premières captures d'écran
Configuration des métadonnées App Store Connect
Avant la soumission, terminez ces champs App Store Connect :
- Politique de confidentialité URL: requis pour les applications iOS
- URL de support: requis, et doit conduire à des informations de contact réelles
- Classement d'âge: complétez le questionnaire afin que l'application puisse être publiée
- Informations de révision de l'application: ajoutez un contact de révision, des identifiants de démonstration fonctionnels si un accès est requis, et des notes claires pour l'équipe de révision
- Conformité à l'exportation: répondez aux questions d'encryption, ou définissez
ITSAppUsesNonExemptEncryptionlorsqueInfo.plistafin de ne pas répéter les mêmes réponses à chaque téléchargement
TestFlight Avant La Revue
Effectuez une passe de TestFlight réelle avant la revue de production :
- Installez l'exacte build de TestFlight
- Connectez-vous avec le même compte de revue que vous prévoyez fournir
- Passez en revue le parcours d'achat, de restauration et d'annulation
- Confirmez que le réviseur peut accéder aux fonctionnalités clés sans mise en cache
- Testez sur iPhone et iPad si les deux sont pris en charge
Vidéos de Présentation de l'Application (Facultatif mais recommandé)
Exigences:
- Longueur de 15 à 30 secondes
- Doit montrer des images réelles de l'application
- Peut inclure des surimpressions de texte succinctes
- Aucune musique avec des problèmes de droits d'auteur
- Mêmes résolutions que les captures d'écran
Implémentation de connexion avec Apple
Déjà couvert ci-dessus, mais critique pour la revue iOS si vous avez un mot de passe social.
Exigences de l'achat en ligne
Si vous proposez des biens ou des services numériques :
Déclarations requises:
- Tarifs clairs avant l'achat
- Conditions de souscription clairement indiquées
- Instructions de résiliation visibles
- Bouton de restauration des achats
Écran de souscription conforme à l'exemple:
function SubscriptionOffer() {
return (
<div className="subscription-screen">
<h2>Choose Your Plan</h2>
<PlanCard>
<h3>Monthly</h3>
<p className="price">$9.99/month</p>
<ul>
<li>Unlimited workouts</li>
<li>Personalized plans</li>
<li>Progress tracking</li>
</ul>
<button>Subscribe</button>
</PlanCard>
<PlanCard>
<h3>Annual</h3>
<p className="price">$79.99/year</p>
<p className="savings">Save 33%</p>
<ul>
<li>Everything in Monthly</li>
<li>Priority support</li>
</ul>
<button>Subscribe</button>
</PlanCard>
<div className="subscription-terms">
<p>
Subscription automatically renews unless cancelled at least
24 hours before the end of the current period. Manage your
subscription in Settings.
</p>
<button onClick={restorePurchases}>Restore Purchases</button>
</div>
<div className="legal-links">
<a href="/privacy">Privacy Policy</a> |
<a href="/terms">Terms of Service</a>
</div>
</div>
);
}
Exigences spécifiques à Android
Configuration de compte Google Play Console
Avant votre première mise en ligne Android, assurez-vous que le compte Play Console et l'interface de l'application existent :
- Créez votre compte développeur sur Inscription au compte Play Console
- Dans le compte Play Console, allez à Accueil > Créer une application
- Choisissez la langue par défaut, le type d'application/jeu et l'adresse e-mail de support
- Acceptez les déclarations de politique de Play requises, d'exportation et de signature d'application Play
- Décidez si l'application est __CAPGO_KEEP_0__ ou paiement
ImportantGoogle vous permet de changer une application payante en gratuite ultérieurement, mais une fois qu'une application a été proposée en gratuit, elle ne peut pas être changée en payante.
Exigence de l'ensemble de l'application
ImportantGoogle Play exige le format de l'ensemble de l'application Android (.aab) et non APK:
# Sync the native Android project first
bunx cap sync android
# Then build the release app bundle
cd android
./gradlew bundleRelease
Niveau de cible de API
Exigence actuelleLes nouvelles applications et les mises à jour d'applications doivent cibler Android 15 (API niveau 35) ou supérieur.
Mise à jour dans android/app/build.gradle:
android {
compileSdkVersion 35
defaultConfig {
targetSdkVersion 35
minSdkVersion 23 // Minimum supported version
}
}
Sécurité des données Google Play
Déjà couvert ci-dessus, mais absolument critique pour l'approbation Android.
Piste de Testage Protégée (Exigence actuelle)
C'est le grand test pour les nouveaux comptes de développeurs personnels : l'exigence de 12 testeurs, 14 jours, détaillée plus tôt dans ce guide.
Chronologie:
- Semaine 1 : Recruter des testeurs, configurer la testage fermée
- Semaine 2-3 : Période de test active (14 jours minimum)
- Semaine 4 : Corriger les problèmes, préparer la mise en production
- Semaine 5 : Soumettre pour examen de production
Public Cible et Classification du Contenu
Questionnaire de Classification du Contenu:
- Requis pour toutes les applications
- Prend 10-15 minutes pour être complété
- Détermine la classification d'âge (Tout le monde, Adolescent, Mature, etc.)
- Mettez-le à jour chaque fois que votre contenu change de manière à affecter les réponses
Sujets traités:
- Violence
- Contenu sexuel
- Profanité
- Substances contrôlées
- Jeux d'argent
- Fonctionnalités d'interaction utilisateur
ImportantSi vous avez du contenu généré par l'utilisateur ou des fonctionnalités sociales, vous devez en informer les utilisateurs et mettre en place une modération.
Exigences de la liste de magasin
Actifs requis:
- Icône de l'application (512 x 512 PNG)
- Graphique de fonctionnalité (1024 x 500 JPG ou PNG)
- Captures d'écran de téléphone (minimum 2, maximum 8)
- Captures d'écran de tablette de 7” (facultatif mais recommandé)
- Captures d'écran de tablette de 10” (facultatif mais recommandé)
Exigences de la description:
- Description courte (80 caractères max)
- Description complète (4000 caractères max)
- Doit décrire avec précision la fonctionnalité de l'application
- Ne peut pas inclure d'informations de contact ou de tarifs
Liste de vérification avant soumission
Avant de valider, passez en revue ce checklist exhaustif :
Exigences techniques
- L'application démarre correctement sur les appareils réels
- Toutes les fonctionnalités montrées dans les captures d'écran fonctionnent
- Aucun contenu de remplacement ou « Bientôt disponible »
- Toutes les clés de tiers API sont des clés de production
- La gestion des erreurs de réseau est mise en œuvre
- Les demandes d'autorisation incluent des explications claires
- L'application ne s'arrête pas sous conditions de réseau défaillantes
- Testée avec les permissions refusées
- Testée sur la version minimale du système d'exploitation pris en charge
- Les fuites de mémoire ont été vérifiées et corrigées
L'authentification & la connexion
- Si vous utilisez l'authentification sociale, Sign in with Apple est inclus (iOS)
- Les informations de connexion du compte de démonstration sont fournies dans les notes de revue
- Le compte de démonstration a accès à toutes les fonctionnalités
- Le flux de réinitialisation du mot de passe fonctionne
- La fonctionnalité de déconnexion fonctionne correctement
- L'option de suppression du compte est disponible (obligatoire en vertu de la GDPR/CCPA)
Mentions légales & Confidentialité
- La politique de confidentialité est accessible au public
- L'URL de la politique de confidentialité est ajoutée à la liste des applications de l'app store
- Les conditions d'utilisation sont accessibles au public (si applicable)
- La politique de confidentialité est liée en application (écran de paramètres)
- Les étiquettes nutritionnelles de la confidentialité sont précises (iOS)
- Section de sécurité des données terminée (Android)
- Tous les buts de collecte de données expliqués
- Collecte de données de tiers SDK divulguée
Contenu & Métadonnées
- Le nom de l'application suit les lignes directrices (pas de surcharge de mots-clés)
- La description décrit avec précision la fonctionnalité
- Les captures d'écran montrent les écrans actuels de l'application
- Les captures d'écran sont localisées pour toutes les langues prises en charge
- Aucune mention de concurrents dans la description
- Aucun superlatif sans preuve
- La note d'âge correspond à la contenu réel
- L'adresse e-mail de contact est surveillée
__CAPGO_KEEP_0__
- Connectez-vous avec Apple (si vous utilisez l'authentification sociale)
- Toutes les tailles de captures d'écran requises sont fournies
- Les captures d'écran iPad réelles sont chargées si le support iPad est activé
- Les descriptions de permission dans Info.plist sont claires
- L'URL de support a été ajoutée avec des détails de contact réels
- L'URL de la politique de confidentialité a été ajoutée dans App Store Connect
- Le questionnaire d'âge a été complété
- La question de conformité à l'exportation a été répondu correctement
- Le contact de la revue de l'application et un compte de démo non expiré ont été fournis
- Ciblez iOS 15.0 ou une version supérieure
- Si IAP : les prix sont clairs, le bouton de restauration des achats est présent
- Aucune référence à Android ou à d'autres plateformes
Spécifique à Android
- Format de paquet d'application (.aab) utilisé
- Ciblez API 35 ou supérieur
- Questionnaire de notation de contenu terminé
- Graphique de fonctionnalité téléchargé
- Test fermé terminé si votre compte Play Console le nécessite (12 testeurs, 14 jours)
- Rapports de plantage de test examinés et corrigés
- Aucune référence à iOS ou à d'autres plateformes
Test (Requis actuel Android)
- 12+ testeurs recrutés si votre compte Play nécessite des tests fermés
- Piste de test fermé créée
- 14 jours consécutifs de test effectués
- Les testeurs ont réellement utilisé l'application (et non juste l'installer)
- Le suivi des crash activé pendant les tests
- Les bogues critiques issus des tests corrigés
- Les commentaires des testeurs documentés
Notes de revue : Quelles informations inclure
Les notes de revue de qualité peuvent faire la différence entre une approbation instantanée et un refus. Voici ce qu'il faut inclure :
Modèle de notes de revue
APP REVIEW INFORMATION
=== Test Account ===
Email: reviewer@testapp.com
Password: TestReview123!
(This account has all premium features enabled)
(This account stays active during review)
=== Review Contact ===
Name: Jane Developer
Email: review@yourapp.com
Phone: +1 555-0100
=== Testing Instructions ===
1. Launch app and tap "Sign In"
2. Enter test credentials above
3. Navigate to "Dashboard" to see main features
4. Tap "Upgrade" to test subscription flow (sandbox mode)
5. Go to Settings > Account to see privacy policy and terms
=== Key Features to Test ===
- Workout tracking (tap "New Workout" on Dashboard)
- Progress charts (Analytics tab)
- Social sharing (Share button on workout details)
- Camera upload for profile picture (Settings > Profile)
=== Third-Party Services ===
- Firebase Authentication (for login)
- Stripe (for payments - sandbox mode)
- AWS S3 (for image uploads)
- Google Maps SDK (for location features)
=== Notes ===
- Location permission is optional, app works without it
- Camera permission only requested when uploading profile picture
- All subscription flows use Apple/Google sandbox environments
- Background location is not used
- Support URL and privacy policy are available from Settings > Account
=== Contact ===
For questions: developer@yourapp.com
Response time: Within 24 hours
Notes de revue spécifiques à iOS
Pour iOS, incluez également :
=== Device Coverage ===
Tested on: iPhone 15 Pro Max, iPad Pro 13-inch
=== App Store Connect Metadata ===
Support URL: https://yourapp.com/support
Privacy Policy: https://yourapp.com/privacy-policy
=== Submission Notes ===
- iPad screenshots match the current iPad UI
- Export compliance answered for this build
- Sign in with Apple is available on the login screen
Notes de revue spécifiques à Android
Pour Android, incluez également :
=== Testing Track Information ===
Closed testing period: [Start Date] to [End Date]
Number of active testers: 23
Critical issues found during testing: 2 (both fixed)
Test distribution method: Email invite list
=== Crash Data ===
Testing period crashes: 3 total
Crash rate: 0.8%
All crashes fixed in this build
=== API Levels ===
Target SDK: 35 (Android 15)
Min SDK: 23 (Android 6.0)
Tested on: Android 11, 12, 13, 14, 15
__CAPGO_KEEP_0__
Ne paniquez pas - le rejet est courant, surtout pour les soumissions pour la première fois. Voici comment y faire face :
__CAPGO_KEEP_1__
-
Lisez attentivement le Rejet
- Notez la règle spécifique violée (par exemple, 4.3, 5.1.1)
- Lisez attentivement les commentaires du réviseur
- Recherchez des captures d'écran si elles sont fournies
-
Comprenez le Problème
- Recherchez la règle dans la documentation officielle
- Recherchez des cas similaires en ligne
- Vérifiez si c'est une erreur de compréhension ou un problème légitime
-
Réparez la Cause Racine
- N'appliquez pas juste des corrections - réparez correctement
- Testez la correction de manière approfondie
- Documentez les modifications apportées
-
Répondez de manière appropriée
Si la rejet est correct :
Thank you for the feedback. I have addressed the issue: Issue: Missing Sign in with Apple option Resolution: Added Sign in with Apple as a login option alongside Google Sign-In. The button appears on the login screen and follows Apple's design guidelines. You can test with the provided demo account or by creating a new account with Apple Sign-In. Changes made in: v1.0.1 (build 2)Si vous pensez qu'il s'agit d'une erreur de compréhension :
Thank you for reviewing my app. I believe there may be a misunderstanding regarding [specific issue]: [Explain clearly with screenshots if needed] The functionality exists at: Settings > [specific location] I've added additional detail to the review notes to help locate this feature. -
Réessayer sans tarder
- Les réessais sont généralement examinés plus rapidement (24-48 heures)
- Incluez des notes de revue mises à jour expliquant la correction
- Faites référence à la soumission précédente si cela est utile
Réponses de rejet courantes
Rejet : « Votre application s'arrête en cours de démarrage »
Réponse :
I sincerely apologize for the crash. I have identified and fixed
the issue:
Root cause: The app attempted to fetch data before network
initialization completed, causing a null reference exception.
Fix: Implemented proper async initialization with error handling
and offline mode. The app now gracefully handles network issues.
Testing: Verified on iPhone 12 (iOS 17), iPhone 14 Pro (iOS 17.1),
tested with WiFi, cellular, and airplane mode.
Build version: 1.0.2 (build 3)
Rejet : “Manque de politique de confidentialité”
Réponse :
Thank you for the feedback. I have added the privacy policy:
URL: https://myapp.com/privacy-policy
Location in app: Settings > Privacy Policy (tappable link)
Also added to: App Store Connect > App Information > Privacy Policy URL
The privacy policy covers all data collection as disclosed in the
Privacy Nutrition Labels.
Rejet : “Ne correspond pas à 4.2 - Fonctionnalité minimale”
Cela signifie que votre application ne fait pas suffisamment pour mériter d'être une application. Réponse :
Thank you for the feedback. I'd like to clarify the app's
functionality:
Core Features:
1. [Feature 1 with specific details]
2. [Feature 2 with specific details]
3. [Feature 3 with specific details]
The app provides significant utility beyond a simple website by:
- Offline functionality for [specific feature]
- Native camera integration for [specific feature]
- Push notifications for [specific feature]
- Device hardware access for [specific feature]
Test account credentials have been provided to demonstrate all
features. Please let me know if you need additional clarification.
Meilleures Pratiques Après L'approbation
Félicitations ! Votre application est approuvée. Voici comment maintenir cet état :
Surveillance Après Le Lancement
Critiques Clés à Suivre:
- Taux de panne (garder en dessous de 1%)
- Taux d'ANR (Android - garder en dessous de 0,5%)
- Notes de l'App Store/Play Store
- Contenu à réviser (répondre à tous les commentaires)
- Bugs signalés par les utilisateurs
Outils à utiliser:
- Firebase Crashlytics
- App Store Connect Analytics
- Google Play Console Vitals
- Sentry ou un suivi d'erreurs similaire
Lignes directrices de mise à jour
Lors de la soumission de mises à jour :
- Testez aussi soigneusement que la soumission initiale
- Mettez à jour les captures d'écran si l'interface utilisateur a changé significativement
- Mettez à jour les étiquettes de confidentialité si la collecte de données a changé
- Fournir des descriptions claires des « Nouveautés »
- Considérer des déploiements étalés pour les changements majeurs
Conformité
Exigences Annuelles:
- Renouveler la classification Android du contenu (obligatoire chaque année)
- Mettre à jour la politique de confidentialité si les pratiques changent
- Réviser et mettre à jour les notes d'âge si le contenu change
- Auditer les SDK tiers pour la conformité
Surveillance Continue:
- Restez informé des changements de lignes directrices
- Rejoignez les newsletters des développeurs Apple/Google
- Participez aux communautés de développeurs
- Suivre les blogs de politique d'App Store/Play Store
Ressources et lecture supplémentaire
Documentation officielle
Apple:
- Lignes directrices de la revue d'App Store
- Se connecter avec Apple
- Aide à App Store Connect
- Confidentialité et utilisation des données
Google:
- Centre de politique du développeur
- Liste de vérification de lancement
- Section de sécurité des données
- Lignes directrices de test
Ressources de la communauté
- r/androiddev - Communauté des développeurs Android
- r/iOSProgramming - Communauté des développeurs iOS
- Stack Overflow - Questions techniques
- Indie Hackers - Communauté des développeurs indépendants
Politique de confidentialité des outils
- Générateur de politique de confidentialité de Termly
- PolitiquesDeConfidentialité.com
- Politique de confidentialité gratuite
Avez-vous besoin d'aide pour la revue de votre application ?
Si vous vous sentez submergé ou que vous souhaitez une guidance experte pour vous assurer que votre application passe la revue la première fois, nous sommes là pour vous aider !
Réservez un appel de consultation avec notre équipe pour une assistance personnalisée avec :
- Préparation de la revue de l'App Store et de la Play Store
- Examen de la politique de confidentialité et de la documentation juridique
- Mise en œuvre de l'implémentation Sign in with Apple
- Stratégie de test et recrutement de testeurs
- Préparation des notes de revue
- Réponse aux rejets et appels
- Processus de soumission complète de l'application
Notre équipe a aidé des centaines de développeurs à naviguer avec succès le processus de revue de l'application et peut vous faire gagner des semaines d'essais et d'erreurs.
Conclusion
La soumission de votre première application peut être intimidante, mais avec une préparation appropriée, vous pouvez passer la revue au premier essai. Rappelez-vous ces points clés :
- Démarrez Tôt: Spécialement pour Android - recrutez ces 12 testeurs au moins 3 semaines avant votre lancement prévu
- Confidentialité en Premier: Ayez votre politique de confidentialité prête et reflétez avec précision vos pratiques de données
- Apple Sign-In: Si vous utilisez tout login social, vous devez inclure Sign in with Apple sur iOS
- Testez Soigneusement: Testez sur des appareils réels, avec des réseaux faibles, et avec les permissions refusées
- Sois Honnête: Informations métadonnées précises et déclarations de confidentialité préviennent les rejets et les problèmes juridiques
- Notes de Revue Détails: Aidez les réviseurs à comprendre rapidement votre application
Les exigences actuelles de test Android ajoutent du temps au processus, mais elles aboutissent à des applications meilleures et à moins de problèmes après le lancement. Prévoyez 3-4 semaines supplémentaires pour les soumissions Android, et vous serez bien positionné pour le succès.
Bon courage pour le lancement de votre application ! Rappel, même si vous êtes rejeté, c'est une opportunité d'apprentissage. La plupart des applications réussies passent par plusieurs tours de revue avant l'approbation.
Vous ne voulez pas y aller seul ? Rendez-vous pour une consultation et laissez nos experts vous guider tout au long du processus.
Avez besoin d'aide pour mettre en œuvre des mises à jour en direct après que votre application soit approuvée ? Consultez Capgo’s solution de mise à jour en direct pour des mises à jour d'application sans révision de l'application Store.