Lignes Directrices de la Plateforme de Revues de l'Android Store pour les IAP
Copiez une commande de configuration avec les étapes d'installation et le guide markdown complet pour ce plugin.
Voie de mise en production qui fonctionne
Titre de la section « Voie de mise en production qui fonctionne »
Copy for AI-
Créez une application Android signée
Les nouvelles applications Google Play doivent être chargées sous forme d'un Android App Bundle (
.aab), et non sous forme d'un APK de débogage sideloadé.Gardez votre
versionCodequi augmente à chaque chargement et stockez votre clé de chargement en toute sécurité si vous utilisez Play App Signing.
-
Créez l'enregistrement de l'application dans le console de Play
Si vous n'avez pas encore de compte développeur, commencez par Inscription à la console de Play. Ensuite, dans Accueil > Créer une application, choisissez la langue, le type d'application/jeu, le statut gratuit/paiement, l'adresse e-mail de support et acceptez les déclarations requises.
Choisissez soigneusement le mode gratuit/paiement.

-
Terminer le contenu de l'application et la liste de magasin
Avant la revue de production, terminez les déclarations requises de la console de Play :
- Politique de confidentialité
- Publicités
- Accès à l'application
- Public cible et contenu
- Classement du contenu
- Sécurité des données
- Déclarations de permissions sensibles, si applicable
-
Exécuter une piste de test Play-Installée
Commencez par test interne pour une QA rapide. Si votre compte développeur est un compte personnel créé après le 13 novembre 2023, vous devez également terminer un test fermé avec au moins 12 testeurs optés avec 14 jours consécutifs avant l'accès à la production.

-
Vérifiez la facturation End-to-End
Installez l'application à partir de Google Play, et non à partir d'un APK exporté localement. Ensuite, confirmez que :
- Les produits chargent correctement à partir de Play
- La feuille de commande d'achat affiche un achat de test bannière pour les testeurs de licence
- Les avantages sont débloqués après achat
- Les flux de restauration et de gestion de l'abonnement fonctionnent
Exigences de facturation Google Play
Section intitulée « Exigences de facturation Google Play »Système de facturation obligatoire
Section intitulée « Système de facturation obligatoire »Pour les biens et services numériques, vous devez utiliser le système de facturation de Google Play : Biens numériques (Utilisation obligatoire de la facturation Play):
Abonnements aux fonctionnalités premium
- Monnaie ou crédits en application
- Crédits en application ou monnaie
- Contenu numérique (livres numériques, musique, vidéos)
- Mises à niveau et pouvoirs de jeu
- Désactivation de l'application et niveaux premium
Biens physiques (ne peut pas utiliser Play Billing):
- Articles de collection
- Services dans le monde réel
- Donations uniques à des organisations à but non lucratif
:::note Configuration de l'abonnement
Dans le console Play, configurez les abonnements Android en utilisant le modèle actuel abonnement -> plan de base -> offre En native-purchasestransmettez l'ID du Plan de Base avec planIdentifier.
:::
Implémentation avec les achats natifs
Section intitulée « Implémentation avec des achats natifs »import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Ensure billing is available on the deviceconst { isBillingSupported } = await NativePurchases.isBillingSupported();if (!isBillingSupported) throw new Error('Google Play Billing not available');
// Fetch subscription products (Store data is required—never hardcode pricing)const { products } = await NativePurchases.getProducts({ productIdentifiers: ['premium_monthly', 'premium_yearly'], productType: PURCHASE_TYPE.SUBS,});
// Plan identifiers are the Base Plan IDs you create in Google Play Consoleconst transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'premium_monthly', planIdentifier: 'monthly-plan', // REQUIRED on Android, ignored on iOS productType: PURCHASE_TYPE.SUBS,});
console.log('Purchase token for server validation:', transaction.purchaseToken);Exigences de transparence et de divulgation
Section intitulée « Exigences de transparence et de divulgation »Divulgation des prix à l'avance
Section intitulée « Divulgation des prix à l'avance »Google Play impose une divulgation claire de tous les coûts avant l'achat :
Éléments obligatoires :
- Prix exact en devise locale de l'utilisateur
- Fréquence de facturation (mensuelle, annuelle, etc.)
- Ce qui est inclus dans l'abonnement
- Coût total pour les offres d'introduction
- Quand des frais seront survenus

Exemple d'interface utilisateur conforme :
function SubscriptionCard({ product }) { return ( <div className="subscription-card"> <h3>{product.title}</h3>
{/* Show intro offer if available */} {product.introductoryPrice && ( <div className="intro-offer"> <p className="intro-price">{product.introductoryPriceString}</p> <p className="intro-period"> for {product.introductoryPricePeriod} </p> </div> )}
{/* Regular price */} <div className="regular-price"> <p className="price">{product.priceString}</p> <p className="period">per {product.subscriptionPeriod}</p> </div>
{/* Clear description */} <p>{product.description}</p>
{/* Renewal terms */} <p className="terms"> Renews automatically. Cancel anytime in Google Play. </p>
<button onClick={() => handlePurchase(product)}> Subscribe Now </button> </div> );}Déclaration de renouvellement automatique
Section intitulée « Déclaration de renouvellement automatique »Avant qu'une souscription se renouvelle automatiquement, Google exige :
- Notification claire que le renouvellement aura lieu
- Rappel du prix
- Accès facile à l'annulation
Clarté des tarifs multiplateformes
Section intitulée “Clarté des tarifs multiplateformes”Si vous vendez le même droit de souscription sur plusieurs plateformes, maintenez la cohérence dans la dénomination du produit, la période de facturation, les avantages inclus et le langage de renouvellement afin que les utilisateurs ne soient pas surpris.
Les prix peuvent différer légitimement en raison de taxes, de monnaie locale ou d'économie de magasin, mais l'interface d'achat ne doit jamais cacher ces différences ou suggérer un coût de renouvellement différent de celui que Google Play facturera.
Exigences de politique de confidentialité
Section intitulée “Exigences de politique de confidentialité”Politique de confidentialité obligatoire
Section intitulée “Politique de confidentialité obligatoire”Si votre application inclut des achats en application, vous devez :
-
Lier la politique de confidentialité dans la liste des applications de Google Play
- Ajouter l'URL de la politique de confidentialité dans le console de Google Play
- Doit être accessible au public
- Doit être dans la même langue que votre application
-
Lien Dans L'Application
- Afficher la politique de confidentialité dans les paramètres de l'application
- Afficher avant de collecter toute donnée utilisateur
- Faire facilement découvrir
Exemple d'implémentation :
function SettingsScreen() { const openPrivacyPolicy = () => { window.open('https://yourapp.com/privacy', '_blank'); };
const openTerms = () => { window.open('https://yourapp.com/terms', '_blank'); };
return ( <div> <h2>Settings</h2>
<button onClick={openPrivacyPolicy}> Privacy Policy </button>
<button onClick={openTerms}> Terms of Service </button>
<button onClick={() => NativePurchases.manageSubscriptions()}> Manage Subscriptions </button> </div> );}Section de la sécurité des données
Section intitulée “Section de la sécurité des données”Google Play exige une déclaration détaillée dans la section de la sécurité des données :
Pour les applications IAP, déclarer :
- Collecte de l'historique d'achat
- Adresses e-mail (pour les factures)
- Identifiants de dispositif (pour la prévention du fraude)
- Traitement des informations de paiement
- Collecte de données d'analytique
La section Sécurité des données est contraignante juridiquement. Les déclarations inexactes peuvent entraîner la suppression de l'application.
Déclarations du contenu de l'application
Section intitulée « Déclarations du contenu de l'application »La critique de Google Play ne concerne pas uniquement le binaire. Avant une mise en production, complétez les déclarations sur Politique et programmes > Contenu de l'application.
Le minimum à examiner avec soin :
- Politique de confidentialité: URL public dans le console Play, plus un point d'entrée en application lorsque nécessaire
- Publicités: Déclarer si l'application contient des publicités
- Accès à l'application: Fournir des informations de connexion ou un chemin de test clair si une écran est bloqué
- Cible et contenu: Correspondre à la vraie audience de l'application
- Notes de contenu: Compléter le questionnaire IARC pour que l'application ne soit pas marqué non noté
- Sécurité des données: Déclarer les pratiques de collecte, de partage et de sécurité avec précision
Raisons de rejet courantes
Section intitulée « Raisons de rejet courantes »1. Mise en œuvre de la facturation manquante ou incorrecte
Section intitulée « 1. Mise en œuvre de la facturation manquante ou incorrecte »Pourquoi cela échoue :
- Pas d'utilisation de Google Play Billing pour les biens numériques
- Utilisation d'API de facturation obsolètes
- Mise en œuvre de solutions de paiement personnalisées pour les abonnements
Prévention :
// ✅ Correct: Use native-purchases (uses Google Play Billing)await NativePurchases.purchaseProduct({ productIdentifier: 'premium_monthly', planIdentifier: 'monthly-plan', productType: PURCHASE_TYPE.SUBS,});
// ❌ Wrong: Custom payment processor for subscriptions// await CustomPayment.charge(user, 9.99);2. Tarifs flous ou coûts cachés
Section intitulée “2. Tarifs flous ou coûts cachés”Pourquoi cela ne réussit pas :
- Le prix n'est visible qu'après avoir cliqué sur l'achat
- Frais supplémentaires non divulgués à l'avance
- Conditions de souscription vagues
Prévention :
function PurchaseScreen({ product }) { return ( <div> {/* Show ALL costs upfront */} <h2>Premium Subscription</h2>
<div className="pricing"> <p className="price">{product.priceString}/month</p> <p className="taxes">Taxes may apply based on location</p> </div>
<div className="features"> <h3>Includes:</h3> <ul> <li>Ad-free experience</li> <li>Unlimited cloud storage</li> <li>Priority support</li> </ul> </div>
<div className="terms"> <p> Subscription renews automatically unless cancelled at least 24 hours before the end of the current period. </p> <p> Manage or cancel in Google Play Subscriptions. </p> </div>
<button onClick={handlePurchase}> Start Subscription </button> </div> );}3. Modèles de souscription trompeurs
Section intitulée “3. Modèles de souscription trompeurs”Pourquoi cela ne fonctionne pas :
- Pré-sélectionner des options premium
- Cacher des alternatives moins chères
- Rendre la résiliation difficile
- Urgence artificielle (« Seulement 3 places restantes ! »)


Prévention :
- Afficher tous les niveaux de souscription de manière égale
- Faire de la résiliation claire et accessible
- Éviter les compteurs à rebours ou la fausse rareté
- N'utilisez pas de schémas sombres pour pousser des options coûteuses
4. Tests incomplets
Section intitulée “4. Tests incomplets”Pourquoi cela ne fonctionne pas :
- L'application s'effondre lors de l'achat
- Les produits ne s'affichent pas
- La confirmation d'achat ne s'affiche pas
- Les fonctionnalités premium ne s'activent pas après achat
- Les tests n'ont été effectués que sur des builds sideloadés au lieu d'un track de test Play-instalé
Prévention :
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Comprehensive testing before submissionasync function testPurchaseFlow() { try { // 1. Test product loading const { products } = await NativePurchases.getProducts({ productIdentifiers: ['premium_monthly', 'premium_yearly'], productType: PURCHASE_TYPE.SUBS, }); console.log('✓ Products loaded:', products.length);
// 2. Test purchase flow const transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'premium_monthly', planIdentifier: 'monthly-plan', productType: PURCHASE_TYPE.SUBS, }); console.log('✓ Purchase completed', transaction.transactionId);
// 3. Verify entitlements const { purchases } = await NativePurchases.getPurchases({ productType: PURCHASE_TYPE.SUBS, }); if ( purchases.some( (purchase) => purchase.productIdentifier === 'premium_monthly' && ['PURCHASED', '1'].includes(purchase.purchaseState ?? '') && purchase.isAcknowledged, ) ) { console.log('✓ Premium features unlocked'); }
// 4. Test restore await NativePurchases.restorePurchases(); console.log('✓ Restore works');
} catch (error) { console.error('✗ Test failed:', error); }}5. Violations de la politique de confidentialité
Section intitulée “5. Violations de la politique de confidentialité”Pourquoi cela ne fonctionne pas :
- Aucun lien de politique de confidentialité dans l'application
- La politique de confidentialité n'est pas accessible
- La collecte de données n'est pas divulguée
- La section Sécurité des données n'est pas précise
Prévention :
- Ajoutez une politique de confidentialité à la liste de l'application Play Store
- Incluez un lien dans les paramètres de l'application
- Remplissez correctement la section Sécurité des données
- Mettez à jour la politique lors de l'ajout de nouvelles collectes de données
Programmes de facturation alternatifs
Section intitulée « Programmes de facturation alternatifs »Les programmes de facturation alternatives de Google sont spécifiques à la région et peuvent changer. Si vous souhaitez quelque chose d'autre que la facturation standard de Google Play, confirmez l'adéquation du marché, les API requises et le langage de divulgation dans le console Play immédiatement avant la mise en œuvre.
Gestion des Abonnements
Section intitulée « Gestion des Abonnements »Annulation Facile
Section intitulée « Annulation Facile »Les utilisateurs doivent être en mesure de :
- Voir les abonnements actifs facilement
- Annuler sans contacter le support
- Comprendre quand l'annulation prend effet
Mise en œuvre :
import { NativePurchases } from '@capgo/native-purchases';
function ManageSubscriptionButton() { const openManagement = async () => { try { // Opens Google Play subscription management await NativePurchases.manageSubscriptions(); } catch (error) { // Fallback to direct URL const playStoreUrl = 'https://play.google.com/store/account/subscriptions'; window.open(playStoreUrl, '_blank'); } };
return ( <button onClick={openManagement}> Manage Subscription in Google Play </button> );}Période de grâce de résiliation
Section intitulée « Période de grâce de résiliation »Déclaration requise :
- Quand prend effet la résiliation ?
- Les utilisateurs gardent-ils accès jusqu'à la fin de la période ?
- Des remboursements partiels sont-ils disponibles ?
function CancellationInfo() { return ( <div className="cancellation-info"> <h3>Cancellation Policy</h3> <ul> <li>Cancel anytime in Google Play</li> <li>Access continues until end of billing period</li> <li>No refunds for partial periods</li> <li>Resubscribe anytime to regain access</li> </ul>
<button onClick={() => NativePurchases.manageSubscriptions()}> Manage in Google Play </button> </div> );}Liste de vérification pré-submission
Section intitulée « Liste de vérification pré-submission »
-
Vérifiez l'implémentation de facturation
- Utilisation de Google Play Billing (via native-purchases)
- Tous les produits de souscription créés dans le console de Play
- Les plans de base et les offres sont configurés correctement
- Les produits sont activés et publiés
- Les tarifs sont définis pour tous les pays cibles
-
Flux d'achat de test
- Créer un compte de test de licence
- Installer la build d'un track de test de Play
- Tester chaque niveau de souscription
- Vérifiez que les produits chargent correctement
- Tester la fin de l'achat
- Confirmez la achat de test bannière d'achat de test s'affiche
- Vérifiez que les fonctionnalités premium sont activées
- Testez la restauration de l'abonnement
- Testez sur plusieurs appareils
-
Vérifiez que tous les textes sont copiés
- Le prix est affiché clairement avant l'achat
- Tous les frais sont divulgués à l'avance
- Les conditions d'abonnement sont claires
- Le processus de résiliation est expliqué
- Aucune affirmation trompeuse n'est faite
-
Contenu de l'application et vie privée
- Politique de confidentialité liée à la console Play
- Politique de confidentialité accessible dans l'application
- Déclaration des publicités terminée
- Instructions d'accès à l'application ajoutées si l'application est verrouillée
- Section de sécurité des données complétée avec précision
- Permissions justifiées et documentées
-
Classement du contenu et public
- Questionnaire de classement du contenu complété
- Public cible et contenu complétés
- Assurer que le classement correspond au contenu réel
- Déclarer les achats en application dans le questionnaire
-
Préparez la liste de votre magasin
- La description de l'application est précise
- La description courte est inférieure à 80 caractères
- La description complète est inférieure à 4000 caractères
- Au moins 2 captures d'écran de téléphone ont été téléchargées
- Une image de fonctionnalité de 1024x500 a été téléchargée
- Les captures d'écran montrent la version actuelle
- Tous les actifs requis ont été téléchargés
Calendrier de revue
Section intitulée « Calendrier de revue »Accès en production pour les nouveaux comptes personnels : Généralement 7 jours ou moins après votre demande Première Revue de Production: Il arrive souvent que cela dure plusieurs jours, voire plus longtemps si des questions sur les factures ou les politiques sont soulevées Mises à jour : Elles sont souvent plus rapides qu'une première mise en ligne, mais elles sont toujours revues Appels en révision : Prévoyez plusieurs jours et fournissez des corrections exactes et des instructions pour le réviseur
Rétrospectives continues Comme Apple, Google passe en revue les applications en continu. Votre application peut être mise en ligne à tout moment pendant la période de révision, et non à une heure fixe.
Test avant soumission
Section intitulée “Test avant soumission”Test de licence
Section intitulée “Test de licence”-
Ajouter un compte de test :
- Allez à la Console de jeu
- Paramètres > Test de licence
- Ajouter un compte Gmail pour le test
-
Tester dans le Sandbox :
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Test purchases with license test accountasync function testInSandbox() { const { isBillingSupported } = await NativePurchases.isBillingSupported(); if (!isBillingSupported) { console.error('Billing not supported in this environment'); return; }
// Fetch products (returns test pricing when using a license tester) const { products } = await NativePurchases.getProducts({ productIdentifiers: ['premium_monthly'], productType: PURCHASE_TYPE.SUBS, });
console.log('Test products:', products);
// Make test purchase (no charge) const transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'premium_monthly', planIdentifier: 'monthly-plan', productType: PURCHASE_TYPE.SUBS, });
console.log('Test purchase complete:', transaction.transactionId);}- Vérifier le bandeau de test :
- Lors de l'achat avec un compte de test
- Devoir voir la notification « Achat de test »
- Aucune charge réelle n'a lieu
Étapes de test interne et fermées
Sous-section intitulée « Étapes de test interne et fermées »Avant la mise en production :
- Créez un suivi interne de test pour une QA rapide ou un suivi de test fermé pour un test plus large Téléchargez une version signée et publiez la version de test
- Ajoutez les adresses e-mail des testeurs et partagez le lien d'opt-in
.aabFaites installer les testeurs à partir de Google Play - Vérifiez que les flux d'achat fonctionnent de bout en bout sur la version installée sur Play
- Si votre compte développeur personnel a été créé après le 13 novembre 2023, gardez au moins 12 testeurs optés pour un test fermé pendant 14 jours consécutifs avant de postuler pour la production
- Une version de débogage sideloadée n'est pas un substitut à une version de test installée sur Play pour valider Google Play Billing
- __CAPGO_KEEP_0__
__CAPGO_KEEP_0__
Meilleures Pratiques pour les Achat Natives
Section intitulée « Meilleures Pratiques pour les Achat Natives »Gérer Tous les États d'Achat
Section intitulée « Gérer Tous les États d'Achat »import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
async function handlePurchase(productId: string, planIdentifier?: string) { try { setLoading(true);
const transaction = await NativePurchases.purchaseProduct({ productIdentifier: productId, planIdentifier, productType: planIdentifier ? PURCHASE_TYPE.SUBS : PURCHASE_TYPE.INAPP, });
console.log('Purchase token:', transaction.purchaseToken ?? transaction.receipt);
// Success - check entitlements from the store const { purchases } = await NativePurchases.getPurchases({ productType: planIdentifier ? PURCHASE_TYPE.SUBS : PURCHASE_TYPE.INAPP, });
const isOwned = purchases.some( (purchase) => purchase.productIdentifier === productId && (purchase.purchaseState === 'PURCHASED' || purchase.purchaseState === '1') && purchase.isAcknowledged, );
if (isOwned) { unlockPremiumFeatures(); showSuccess('Premium activated!'); }
} catch (error: any) { // Handle specific error cases switch (error.code) { case 'USER_CANCELLED': // User backed out - no error needed console.log('Purchase cancelled'); break;
case 'ITEM_ALREADY_OWNED': // They already own it - restore instead showInfo('You already own this! Restoring...'); await NativePurchases.restorePurchases(); break;
case 'ITEM_UNAVAILABLE': showError('This subscription is currently unavailable. Please try again later.'); break;
case 'NETWORK_ERROR': showError('Network error. Please check your connection and try again.'); break;
default: showError('Purchase failed. Please try again.'); console.error('Purchase error:', error); } } finally { setLoading(false); }}Mettre en œuvre les Récupérations d'Achat
Section intitulée « Mettre en œuvre les Récupérations d'Achat »import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
function RestorePurchasesButton() { const [loading, setLoading] = useState(false);
const handleRestore = async () => { setLoading(true);
try { await NativePurchases.restorePurchases();
const { purchases } = await NativePurchases.getPurchases({ productType: PURCHASE_TYPE.SUBS, });
const hasSubscription = purchases.some( (purchase) => purchase.productType === 'subs' && purchase.isAcknowledged, );
if (hasSubscription) { unlockPremiumFeatures(); showSuccess('Subscriptions restored!'); return; }
// Check one-time unlocks if needed const { purchases: iaps } = await NativePurchases.getPurchases({ productType: PURCHASE_TYPE.INAPP, }); const hasInApp = iaps.some((purchase) => purchase.productIdentifier === 'premium_unlock');
if (hasInApp) { unlockPremiumFeatures(); showSuccess('Previous purchases restored!'); return; }
showInfo('No previous purchases found.'); } catch (error) { showError('Failed to restore purchases. Please try again.'); } finally { setLoading(false); } };
return ( <button onClick={handleRestore} disabled={loading}> {loading ? 'Restoring...' : 'Restore Purchases'} </button> );}Vérifier l'État d'Abonnement
Section intitulée « Vérifier l'État d'Abonnement »import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
async function checkSubscriptionStatus() { try { const { purchases } = await NativePurchases.getPurchases({ productType: PURCHASE_TYPE.SUBS, });
const subscription = purchases.find( (purchase) => purchase.productIdentifier === 'premium_monthly' && (purchase.purchaseState === 'PURCHASED' || purchase.purchaseState === '1') && purchase.isAcknowledged, );
if (!subscription) { showPaywall(); return; }
console.log('Subscription active:', { productId: subscription.productIdentifier, expiresAt: subscription.expirationDate, willRenew: subscription.willCancel === false, purchaseToken: subscription.purchaseToken, });
unlockPremiumFeatures(); } catch (error) { console.error('Failed to check subscription:', error); }}Si Votre Application est Rejetée
Si Votre Application Est RejetéeViolations de Politiques Courantes
Section intitulée « Violations de Politiques Courantes »Politique des Paiements :
- Non utilisation de Google Play Billing
- Termes de souscription trompeurs
- Coûts cachés
Politique des Données Utilisateur :
- Manque de politique de confidentialité
- Déclarations de sécurité des données inexactes
- Permissions excessives
Étapes de Résolution
Étapes de Résolution-
Examinez la Notification de Violation
- Lisez la politique spécifique citée
- Comprenez ce que Google a signalé
- Vérifiez les exemples qu'ils ont fournis
-
Réparez le Problème
- Adressez la cause racine, et non seulement les symptômes
- Testez soigneusement après la correction
- Documentez toutes les modifications apportées
-
Soumettre un Recours (si applicable)
Subject: Policy Violation Appeal - [App Name]Dear Google Play Review Team,I have received notification that my app violates [Policy X.Y].I have made the following changes to comply:1. [Specific change made]2. [Specific change made]3. [Specific change made]The updated version [version number] addresses all concerns raised.Test account for verification:Email: test@example.comPassword: TestPass123Thank you for your consideration.
-
Résubmit ou Mettre à jour
- Télécharger la version corrigée
- Résubmit pour examen
- Suivre l'état dans le Console de Play
Ressources supplémentaires
Section intitulée “Ressources supplémentaires”- Centre de politique du développeur Google Play
- Documentation de facturation Google Play
- Meilleures pratiques pour les abonnements
- Préparez votre application pour l'examen
- Exigences de test pour les nouveaux comptes personnels
- Aide de la Console de Jeu
Besoin d'aide experte ?
Section intitulée « Besoin d'aide experte ? »Naviguer dans les commentaires de l'App Store peut être complexe, surtout lorsque vous devez combiner la conformité aux factures, les déclarations de contenu de l'application et la configuration de la piste de test. Si vous avez besoin d'une assistance personnalisée :
Réservez un appel de consultation avec notre équipe pour l'aide avec :
- Préparation complète de la revue de l'App Store
- Configuration de la piste de test et recrutement de testeurs
- Révision de l'implémentation de l'IAP
- Conformité à la sécurité des données et à la vie privée
- Dépannage et réclamation de rejet
- Processus de soumission d'application complet
Nos experts ont guidés des centaines d'applications à travers des soumissions réussies de l'App Store et peuvent vous aider à naviguer les exigences actuelles.
Support
Section intitulée “Support”Avez-vous besoin d'aide pour l'implémentation ?
- Vérifiez le Documentation des achats natifs
- Vérifiez Guide de test de sandbox Android
- Visitez Support du développeur Google Play