Soumettre votre première application à l'App Store ou au Play Store 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 soigneuse au détail. Ce guide complet vous guide tout au long de tout ce dont vous avez besoin pour passer la revue sur votre première soumission pour les deux plateformes iOS et Android.
Comprendre le Processus de Revue 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.
Calendrier de 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 à travers 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 par mercredi.
États de la connexion App Store que vous verrez
- 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 dans la file d'attente
- En 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
Lignes de temps de la révision de Google Play Store (Mise à jour 2026)
- Vérification Initiale: 3-7 jours (beaucoup plus longtemps que les années précédentes)
- Porte close de la phase de test: au moins 14 jours avant que vous puissiez demander l'accès à la production pour les comptes de Play Console personnels nouvellement créés
- Vérification de Production Après Test: généralement 3-7 jours après que l’exigence de test fermé est complète
- Mises à jour des Applications Existantes: 1-3 jours
- Violations de Politique: peut s'étendre à 14+ jours si une vérification supplémentaire est déclenchée
Mise à Jour Importantecontext
Compte Apple Developer
Avant votre première mise en ligne iOS, assurez-vous que le côté Apple est correctement configuré :
- S'inscrire au Programme Apple Developer
- Activer l'authentification à deux facteurs pour le compte Apple utilisé pour l'inscription
- Choisissez le type de membership 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 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 modifie les exigences minimales SDK au fil du temps. À compter du 28 avril 2026, les applications téléchargées sur App Store Connect doivent utiliser la version iOS & iPadOS 26 __CAPGO_KEEP_0__ ou ultérieure iOS & iPadOS 26 SDK or later.
C'est la modification qui surprend le plus les éditeurs Android débutants :
L’exigence de 12 testeurs pour les comptes Android personnels nouveaux
Si votre compte développeur Google Play est un
un compte personnel 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-in
- 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 demander l'accès à la production dans le console 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éez un circuit de test fermé
- Allez sur le console de Google Play
- Naviguez vers Test et publication > Test > Test fermé
- Créez une nouvelle mise à jour dans le circuit de test fermé
- Téléchargez votre Android App Bundle (
.aab)
-
Recrutez vos testeurs
Où trouver les 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)
Crucial: Assurez-vous que les testeurs :
- Disposent d'adresses Gmail valides
- Utilisent effectivement des appareils Android
- Sont restés opt-in pendant toute la période de 14 jours
-
Invitez des Testeurs
- Créez une liste de testeurs dans le console 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 Play pour les nombres d'installation
- Suivre les rapports de crash et les ANR (Application Non Répondante)
- 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 l'interface de 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 place cela
Google a introduit cette exigence pour :
- Réduire la spam 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 improprie des systèmes d'authentification, en particulier les connexions sociales.
L’exigence de connexion Apple (Critique pour iOS)
La règle d'Apple: Si votre application propose une 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
- Facebook Login
- Twitter/X Login
- LinkedIn Login
- Tout autre service d'authentification tiers
Ceci ne s'applique pas à:
- L'authentification par e-mail/ mot de passe uniquement
- Les systèmes d'identification d'État
- Les systèmes SSO d'entreprise (lorsque l'application est destinée à cette entreprise spécifique)
- Les systèmes d'authentification des fournisseurs d'éducation
Mettre en œuvre Sign in avec Apple
Si vous utilisez un service de 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 de courrier électronique privé (par exemple,
abc123@privaterelay.appleid.com). Votre application doit gérer cela. -
Utilisateurs débutants vs utilisateurs réguliers: Apple ne fournit que les détails de l'utilisateur (nom, adresse e-mail) lors de la première autorisation. Enregistrez cette information car les réinscriptions ultérieures ne l'incluront pas.
-
Conception du bouton: Apple fournit des lignes directrices de conception strictes pour le bouton Sign in with Apple. Utilisez leurs assets 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, Google a des lignes directrices :
Exigences de connexion Google:
- Must use official Google Sign-In SDK
- Must respect les directives de branding de Google
- Doit être l'option principale si vous l'offrez
Meilleure pratique pour les plateformes croisées: Offrez 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 Apple)
- Se connecter avec Google
- Autres options sociales (Facebook, Twitter, etc.)
Exigences de compte de démonstration
Essentiel pour la revue: Si votre application nécessite une connexion, vous devez fournir des informations de connexion de démonstration fonctionnelles dans les notes de revue de l'application.
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
Erreurs courantes:
- 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 de sandbox
Règles de confidentialité et exigences légales
Les deux magasins d'applications exigent désormais des politiques de confidentialité accessibles et des conditions d'utilisation avant que votre première soumission soit approuvée.
Politique de confidentialité requises
Votre politique de confidentialité doit :
-
Être accessible au public
- Hébergé sur une URL publique (pas derrière un mot de passe)
- Chargable dans les navigateurs web standards
- Disponible dans les mêmes langues que votre application
-
Aborder ces sujets obligatoires:
- 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 mineurs (si l'application est destinée à des utilisateurs de moins de 13/16 ans)
-
Se connecter via l'application
- Accessible depuis l'écran de paramètres ou l'écran de compte
- Doit être accessible en un seul clic (pas enfoui dans les menus)
- Doit s'ouvrir dans le navigateur par défaut ou dans le navigateur intégré
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)
Important: Pendant que les générateurs sont suffisants pour démarrer, 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
Si ce n'est pas toujours obligatoire, il est fortement recommandé et requis si :
- Vous proposez des achats ou des abonnements en application
- Vous avez du contenu généré par les utilisateurs
- Vous fournissez tout service au-delà de la fonctionnalité de base de l'application
- Vous souhaitez une protection juridique
Must Include:
- Politique d'utilisation acceptée
- Conditions de résiliation du compte
- Limitation de responsabilité
- Droits de propriété intellectuelle
- Procédure de résolution des litiges
- Politique de remboursement (surtout pour les IAP)
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 de métadonnées de l'App Store
Les deux magasins vous obligent à fournir l'URL de la politique de confidentialité lors de la soumission de l'application :
iOS - App Store Connect:
- App Information > Informations générales > URL de la politique de confidentialité
- Must be HTTPS (HTTP sera rejeté)
- Will be displayed on your App Store page
- Add a URL de support avec des informations de contact réelles pour les utilisateurs
- Completez le questionnaire d'âge avant la soumission
Android - Google Play Console:
- Présence de l'application > Paramètres de l'application > Politique de confidentialité
- Requis pour toutes les applications ciblant les enfants
- Fortement recommandé pour toutes les applications
Étiquettes de nutrition de la vie privée (iOS)
iOS exige des disclosures de confidentialité détaillées sous forme de « label nutritionnel » :
Catégories que vous devez déclarer:
- Contact Info (Informations de contact) : Adresse e-mail, nom, numéro de téléphone
- Financial Info : Informations financières, carte de crédit, compte bancaire
- Location : Localisation précise ou grossière
- User Content : Contenu utilisateur, photos, vidéos, audio, messages
- Identifiers : Identifiants, ID utilisateur, ID appareil, ID publicité
- Usage Data : Données de navigation, données personnelles
- : Interactions avec le produit, données publicitaires, journaux de crash: Données de crash, données de performance
Pour chaque type de données, spécifiez:
- Quelle que soit la finalité de sa 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 vos analytics SDK le font. Effectuez un audit de 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 Google 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
- Expliquer les pratiques de sécurité (chiffrement, etc.)
- Fournir un lien vers 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 développeurs débutants
La compréhension de pourquoi les applications sont rejetées vous aide à éviter ces pièges :
1. L'application se bloque ou ne s'ouvre pas
Pourquoi cela se produit-il:
- Se tester uniquement sur un émulateur, et non sur un appareil réel
- Manque de gestion d'erreurs pour les échecs de réseau
- Endpoints 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 Contrôle de Test:
- Tester sur des appareils réels (au moins 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émonstration n'a pas accès aux fonctionnalités annoncées
- Les fonctionnalités premium sont affichées mais non mises en œuvre
- Les placeholders « Prochainement disponible » dans l'application
Comment s'en Protéger:
- N'envoyez que lorsque toutes les fonctionnalités annoncées sont complètes
- Assurez-vous que le compte de démonstration ait accès complet
- Supprimez ou désactivez les fonctionnalités incomplètes avant soumission
- Mettez à jour les captures d'écran pour qu'elles correspondent exactement à la dernière version
3. Contenu inapproprié pour la classification d'âge
Pourquoi cela se produit-il:
- 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
- Contenu généré par les utilisateurs sans modération
- Liens vers du contenu externe non modéré
Comment définir une 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+
- Seulement adultes 18+
ImportantSi les utilisateurs peuvent partager du contenu entre eux, vous devez :
- Système de modération de contenu
- Fonctionnalité de signalement/bloque
- Lignes directrices de la communauté claires
- Garder la portée d'âge si nécessaire
4. Informations de 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
- Évaluations ou manipulations de notes fausses
- 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 ! »
- Écrans d'aperçu : Photos de stock génériques
✅ BON:
- Nom de l'application : « FitTrack - Journal de l'entraînement »
- Description : « Suivez vos entraînements avec des routines personnalisables et des tableaux de progression. »
- Écrans d'aperçu : Écrans de l'application actuelle du build
5. Insuffisance des tests (Surtout les tests fermés Android)
Pourquoi cela se produit:
- Passer par le période d'essai obligatoire de 14 jours
- Ne pas recruter suffisamment de testeurs
- Les testeurs ne utilisent pas réellement l'application
- Pas de suivi des crashs pendant les tests
Comment y remédier:
- Commencez à recruter des testeurs 3-4 semaines avant la date prévue de lancement
- Utilisez Firebase Crashlytics ou un équivalent pendant les tests
- S'impliquer activement avec les testeurs (enquêtes, formulaires de feedback)
- Réparez les problèmes critiques avant de promouvoir vers la production
6. Autorisations sans justification
Pourquoi cela se produit:
- Demande de localisation sans l'utiliser
- 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 d'enregistrement de métadonnées:
<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 des captures d'écran:
- Must show actual app content (no mockups)
- Supprimez la barre d'état ou montrez du contenu réaliste
- Localisez pour toutes les langues prises en charge
- Évitez les surcharges de texte sur les captures d'écran
- Montrez les fonctionnalités clés dans les deux premières à trois captures d'écran
Paramètres de métadonnées App Store Connect
Avant la soumission, terminez ces champs App Store Connect :
- Politique de confidentialité URL: obligatoire pour les applications iOS
- URL de support: obligatoire, et devrait mener à des informations de contact réelles
- Classement d'âge: complétez le questionnaire afin que l'application puisse être publiée
- Informations de revue de l'application: ajoutez un contact de revue, des identifiants de démonstration fonctionnels si un accès est requis, ainsi que des notes claires pour l'équipe de revue
- Compatibilité d'exportation: répondez aux questions d'encryption, ou définissez
ITSAppUsesNonExemptEncryptionenInfo.plistlorsque cela est approprié afin de ne pas répéter les mêmes réponses à chaque téléchargement
TestFlight Avant La Revue De L'Application
Effectuez une passe réelle de TestFlight 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 l'achat, le rétablissement et la suppression de la rubrique
- Confirmez que le réviseur peut accéder aux fonctionnalités clés sans mise en place cachée
- 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
- No musique avec des problèmes de droits d'auteur
- Même résolutions que les captures d'écran
Implémentation de connexion avec Apple
Déjà couvert ci-dessus, mais essentiel pour la revue iOS si vous avez un mot de passe social.
Exigences de ventes en ligne
Si vous proposez des biens ou des services numériques :
Disclosures obligatoires:
- 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 production Android, assurez-vous que le compte Play Console et la coquille de l'application existent :
- Créez votre compte développeur sur Inscription au console de jeu
- Dans la console de jeu, 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 de Play
- Décidez si l'application est gratuite ou payant
ImportantLa plateforme Google 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
ImportantLa plateforme Google Play exige le format de l'ensemble de l'application (.aab) Android, et non l'APK.
# Sync the native Android project first
bunx cap sync android
# Then build the release app bundle
cd android
./gradlew bundleRelease
Target API Level Requirement
Exigence actuelle: New apps and app updates must target Android 15 (API level 35) or higher.
Mise à jour dans android/app/build.gradle:
android {
compileSdkVersion 35
defaultConfig {
targetSdkVersion 35
minSdkVersion 23 // Minimum supported version
}
}
Sécurité des données de Google Play
Déjà couvert ci-dessus, mais absolument critique pour l'approbation Android.
Voie de Test Fermée (Exigence actuelle)
C'est le grand moment pour les comptes de développeurs personnels nouvellement créés : l’exigence de 12 testeurs, de 14 jours, détaillée plus tôt dans ce guide.
Chronologie:
- Semaine 1 : Recruter des testeurs, configurer la testabilité fermée
- Semaine 2-3 : Période d'essai 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 tous les applications
- Prend 10-15 minutes pour être complété
- Détermine la classification d'âge (Tout le monde, Adolescent, Mature, etc.)
- Mettez-l’à jour chaque fois que vos contenus changent de manière à affecter les réponses
Sujets traités:
- Violence
- Contenu sexuel
- Profanité
- Substances contrôlées
- Mise en jeu de paris
- Fonctionnalités d'interaction utilisateur
ImportantMettez en avant que si vous avez des contenus générés par les utilisateurs ou des fonctionnalités sociales, vous devez les déclarer 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é)
Description Exigences:
- 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 tarification
Liste de vérification avant soumission
Avant de valider, passez en revue cette liste exhaustive :
Exigences techniques
- L'application se lance correctement sur des appareils réels
- Toutes les fonctionnalités affichées dans les captures d'écran fonctionnent
- Aucun contenu de remplacement ou « Bientôt »
- Toutes les clés 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 se bloque pas dans des conditions de réseau dégradées
- Testée avec les autorisations 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
Authentification & Connexion
- Si vous utilisez un connexion sociale, la connexion avec Apple est incluse (iOS)
- __CAPGO_KEEP_0__
- Les informations de compte de démonstration fournies dans les notes de revue
- Le compte de démonstration a accès à toutes les fonctionnalités
- Le flux de réinitialisation de mot de passe fonctionne
- La fonctionnalité de déconnexion fonctionne correctement
Option de suppression du compte disponible (obligatoire par le RGPD/CCPA)
- Conditions 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
- Les conditions d'utilisation sont accessibles au public (si applicable)
- La politique de confidentialité est liée dans l'application (écran de paramètres)
- La section de sécurité des données est terminée (Android)
- Tous les buts de collecte de données sont expliqués
- La collecte de données tiers est divulguée SDK
Contenu & Métadonnées
- Le nom de l'application respecte 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
- Le classement d'âge correspond à la contenu réel
- L'adresse e-mail de contact est surveillée
Spécifique à iOS
- Connexion avec Apple mise en œuvre (si utilisation de la connexion sociale)
- Toutes les tailles de captures d'écran requises fournies
- Captures d'écran iPad réelles téléchargées si le support iPad est activé
- Descriptions de permissions dans Info.plist claires
- URL de support ajoutée avec des détails de contact réels
- URL de politique de confidentialité ajoutée dans App Store Connect
- Questionnaire d'âge de notation complété
- Réponse correcte à la question de conformité d'exportation
- Contact et compte de démonstration non expiré de l'App Review fournis
- Cible iOS 15.0 ou supérieur
- Si IAP : tarifs clairs, bouton de restauration des achats présent
- No références à Android ou à d'autres plateformes
Spécifique à Android
- Format de l'archive d'application (.aab) utilisé
- Ciblez API 35 ou supérieur
- Questionnaire de notation de contenu complété
- Graphique de fonctionnalité téléchargé
- Test fermé terminé si votre compte de console de Play le nécessite (12 testeurs, 14 jours)
- Rapports de crash de test examinés et corrigés
- Aucune référence à iOS ou à d'autres plateformes
Test (Exigence actuelle d'Android)
- 12+ testeurs recrutés si votre compte de Play nécessite un test fermé
- Voie de test fermé créée
- 14 jours consécutifs de test terminés
- Les testeurs ont réellement utilisé l'application (et non juste l'installer)
- Le suivi des crashs a été activé pendant les tests
- Les bogues critiques issus des tests ont été corrigés
- Les commentaires des testeurs ont été documentés
Notes de revue : Qu'est-ce qu'il faut inclure
Les notes de revue bien faites 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
Si vous êtes Rejeté
Ne paniquez pas - le rejet est courant, surtout pour les soumissions pour la première fois. Voici comment gérer cela :
Étapes Après le Rejet
-
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
- Don’t just patch - fix correctement
- Testez la correction de manière exhaustive
- 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 malentendu :
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ésubmittez rapidement
- Les résubmissions sont généralement examinées plus rapidement (24-48 heures)
- Incluez des notes de revue mises à jour expliquant la correction
- Référez-vous à la soumission précédente si cela est utile
Réponses de rejet courantes
Rejet : « Votre application s'arrête en cas de lancement »
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 : « Politique de confidentialité manquante »
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 est plus compliqué. 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 (gardez-l’en dessous de 1%)
- Taux d'ANR (Android - gardez-l’en dessous de 0,5%)
- Notes de l'App Store/Play Store
- Contenu de la revue (répondez à toutes les revues)
- Bugs signalés par les utilisateurs
Outils à utiliser:
- Firebase Crashlytics
- Analytiques App Store Connect
- 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 a changé significativement
- Mettez à jour les étiquettes de confidentialité si la collecte de données a changé
- Fournir des descriptions claires de « Ce qui est nouveau »
- 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 à jour sur les changements de lignes directrices
- Rejoignez les newsletters des développeurs Apple/Google
- Participez aux communautés de développeurs
- Suivez les blogs de politique d'App Store/Play Store
Ressources et lecture supplémentaire
Documentation officielle
Apple:
- Guides de 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 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
Outils de politique de confidentialité
- Générateur de politique de confidentialité de Termly
- PolitiquesDeConfidentialite.com
- Politique de confidentialité gratuite
Avez-vous besoin d'aide pour votre examen d'application ?
Si vous vous sentez submergé ou que vous souhaitez une guidance experte pour vous assurer que votre application passe l'examen au premier essai, nous sommes là pour vous aider !
Réservez un appel de consultation avec notre équipe pour une assistance personnalisée avec :
- Préparation de l'examen 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 d'examen
- 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 de tentatives 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 pour la première fois. Rappelez-vous ces points clés :
- Démarrez Tôt: Surtout pour Android - recrutez ces 12 testeurs au moins 3 semaines avant votre lancement prévu
- Confidentialité En Tête: 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 avec Apple sur iOS
- Testez Soigneusement: Testez sur des appareils réels, avec des réseaux dégradés, et avec les permissions refusées
- Étant Honnête: Des métadonnées et des déclarations de confidentialité précises préviennent le rejet 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 post-lancement. Prévoyez un délai supplémentaire de 3-4 semaines pour les soumissions Android, et vous serez bien positionné pour réussir.
Bon courage pour la lancement de votre application ! Rappelons que 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.
Besoin d'aide pour l'implémentation 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 interruption de la revue des magasins d'applications.
Continuez avec Le Guide complet de revue d'applications pour la première fois en 2026 - iOS et Android
Si vous utilisez Le Guide complet de revue d'applications pour la première fois en 2026 - iOS et Android pour planifier la sécurité et la conformité, connectez-l’avec Chiffrement pour le détail d'implémentation dans Chiffrement, Conformité pour le détail d'implémentation dans Conformité, Capgo Scanner de sécurité pour le flux de travail du produit dans Capgo Scanner de sécurité, Capgo Sécurité pour le flux de travail du produit dans Capgo Sécurité, et Centre de confiance Capgo pour le flux de travail du produit dans le Centre de confiance Capgo.