Invia la tua prima app all'App Store o al Play Store e può sembrare sovraccarico. Con linee guida in continua evoluzione e un controllo più rigoroso nel 2026, ottenere l'approvazione richiede una grande attenzione ai dettagli. Questa guida completa ti guida attraverso tutto ciò di cui hai bisogno per superare la revisione sulla tua prima sottoscrizione per entrambi i piattaforme iOS e Android.
Capire il processo di revisione nel 2026
Entrambe Apple e Google hanno rafforzato significativamente i loro processi di revisione negli ultimi anni, con particolare enfasi sulla privacy, sulla sicurezza e sull'esperienza utente. Comprendere questi cambiamenti è fondamentale per i primi sviluppatori.
Cronologia della revisione dell'App Store di iOS
- Revisione standard: 24-48 ore
- Periodi di punta: 3-5 giorni (soprattutto durante le stagioni festive)
- Weekend: Nessuna revisione elaborata
- Revisione accelerata: Disponibile per i ripari di bug critici (deve essere richiesta tramite App Store Connect)
Pro consiglio: Invia presto nella settimana (lunedì-martedì) per evitare i ritardi del fine settimana. Le sottoscrizioni di lunedì sono generalmente revisionate da mercoledì.
Stati di App Store Connect che Vedrai
- Preparati alla Sottomissione: Il tuo build o i metadati sono ancora in preparazione
- In Attesa di Revisione: Apple ha la tua sottomissione in coda
- In Revisione: La squadra di revisione sta controllando attivamente l'app
- In Attesa di Rilascio del Sviluppatore: Approvato, ma in attesa della tua scelta di rilascio manuale
- Rifiutato / Problemi Non Risolti: Apple ha bisogno di modifiche prima dell'approvazione
Linea del Tempo della Revisione di Google Play Store (Aggiornamento 2026)
- Valutazione Iniziale: 3-7 giorni (significativamente più a lungo rispetto agli anni precedenti)
- Porta a Chiusura della Scheda di Test: 14 giorni minimo per nuovi account personali di Play Console prima di poter richiedere l'accesso alla produzione
- Valutazione di Produzione Dopo la Scheda di Test: Di solito altri 3-7 giorni dopo che è completa la richiesta di chiusura della scheda di test
- Aggiornamenti per Applicazioni Esistenti: 1-3 giorni
- Violazioni della Politica: Può estendersi a 14+ giorni se è attivata una valutazione aggiuntiva
Aggiornamento Importante: Google richiede ora un test più rigoroso per alcuni nuovi account di Play Console, di cui tratteremo in dettaglio di seguito.
Setup dell'Account Apple Developer
Prima della tua prima rilascio iOS, assicurati che il lato Apple sia configurato correttamente:
- Iscriviti al Programma Apple Developer
- Attiva l'autenticazione a due fattori per l'Account Apple utilizzato per l'iscrizione
- Scegli il tipo di iscrizione corretto:
- Individuale / Proprietario Unico: il tuo nome personale legale diventa il nome del venditore sull'App Store
- Organizzazione: richiede un'entità legale, un numero D-U-N-S, un sito web pubblico e una persona con l'autorità di vincolare la società agli accordi di Apple
- Utilizza nomi legali durante l'iscrizione. Pseudonimi o nomi aziendali nei campi del nome di battesimo e cognome possono ritardare l'approvazione
- Dopo l'approvazione dell'iscrizione, accedi a App Store Connect e crea il record dell'app con l'ID bundle finale, il nome dell'app, il SKU e la lingua principale



Importante: Apple modifica i requisiti minimi SDK nel tempo. A partire dal 28 aprile 2026, le app caricate su App Store Connect devono utilizzare il iOS e iPadOS 26 SDK o successivo.
Il requisito di testing Android critico
Questo è il cambiamento che coglie di sorpresa la maggior parte dei nuovi editori Android:
Requisito di 12 tester per nuovi conti Android personali
Se il tuo account sviluppatore di Google Play è un account utente creato dopo il 13 novembre 2023, devi completare un periodo di testing chiuso prima che l'app possa andare in produzione:
Requisiti:
- Minimo 12 Testatori: Devi reclutare almeno 12 tester che hanno scelto di partecipare
- Periodo di Testing di 14 Giorni: L'app deve rimanere in testing chiuso per almeno 14 giorni consecutivi
- Richiesta di Accesso alla Produzione: Dopo il periodo di testing, hai ancora bisogno di richiedere l'accesso alla produzione in Play Console
- Raccolta di Feedback: Devi documentare gli issue trovati, le correzioni apportate e come i tester hanno utilizzato l'app
Come configurare la tua Track di Testing
-
Crea un Percorso di Test di Chiusura
- Vai al Console di Gioco di Google
- Naviga a Test e rilascio > Test > Test di chiusura
- Crea una nuova versione nel percorso di test di chiusura
- Carica il tuo Pacchetto di App Android (
.aab)
-
Recruita i tuoi Testatori
Dove trovare i tester:
- Amici e familiari (punto di partenza più facile)
- Comunità di sviluppatori (Reddit’s /r/androiddev, /r/betatests)
- Seguaci di social media
- Piattaforme di test beta (BetaList, BetaTesting.com)
- Studenti universitari (se hai contatti)
Importante: Assicurati che i tester:
- Hanno account Gmail validi
- Usano effettivamente dispositivi Android
- Restano iscritti durante l'intero periodo di 14 giorni
-
Invita Testers
- Creare una lista di tester nel Console di Gioco
- Aggiungi indirizzi email dei tester
- Condividi l'URL di iscrizione con i tuoi tester
- Inviare avvisi per assicurarti che installino e utilizzino l'app
-
Monitora l'attività di testing
- Controlla la Console di Gioco per i numeri di installazione
- Segnalare i rapporti di crash e ANR (Application Not Responding)
- Raccogliere feedback dai tester
- Risolvere qualsiasi problema critico prima della promozione
-
Promuovere a Produzione
- Dopo 14 giorni con 12+ tester che hanno scelto di partecipare
- Richiedere l'accesso alla produzione dal pannello di controllo del Console di Gioco
- Revisionare tutti i rapporti di crash e i feedback
- Creare rilascio di produzione e sottoporlo a revisione finale
Perché Google ha implementato questo
Google ha introdotto questo requisito per:
- Ridurre lo spam di app di bassa qualità
- Assicurarsi che le app siano correttamente testate prima di raggiungere gli utenti
- Identificare le app maliziose attraverso i modelli di utilizzo realistici
- Migliorare la qualità generale della Play Store
Reality Check: Questo aggiunge almeno 2-3 settimane al tuo calendario di lancio. Pianifica di conseguenza e inizia a reclutare i tester presto.
Requisiti di autenticazione e accesso
Uno dei motivi più comuni di rifiuto è l'implementazione impropria dei sistemi di autenticazione, soprattutto dei social login.
Il requisito di accesso Apple (Critico per iOS)
La regola di Apple: Se la tua app offre qualsiasi opzione di accesso sociale di terze parti (Google, Facebook, Twitter, ecc.), dovrai anche offrire l'accesso con Apple come opzione.
Ciò si applica a:
- Google Sign-In
- Facebook Login
- Login con Twitter/X
- Login con LinkedIn
- Altre servizi di autenticazione terze parti
Questo non si applica a:
- Autenticazione tramite email/parola
- Sistemi di identificazione governativa
- Sistemi di Single Sign-On aziendali (quando l'app è destinata a quell'azienda specifica)
- Sistemi di autenticazione dei provider di istruzione
Implementare il login con Apple
Se stai utilizzando il login sociale, ecco cosa devi implementare:
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);
}
}
Considerazioni Importanti:
-
Privacy del Posta Elettronica: Gli utenti possono scegliere di nascondere la loro posta elettronica. Apple fornisce un servizio di posta elettronica privata (ad esempio,
abc123@privaterelay.appleid.com). Il tuo app deve gestire questo. -
Primi Accessi vs Utenti Ritornati: Apple fornisce informazioni sugli utenti (nome, posta elettronica) solo alla prima autorizzazione. Salva questa informazione perché le successivi connessioni non le includeranno.
-
Progettazione del Bottone: Apple fornisce linee guida di progettazione rigorose per il bottone di accesso con Apple. Utilizza i loro asset ufficiali.
-
Verifica del Backend: Verifica sempre il token di identità sul tuo server di backend, non fidarti mai dei token client-side da soli.
Requisiti di Accesso con Social per Android
Mentre Android non richiede un provider specifico come fa iOS, Google ha linee guida:
Requisiti di accesso Google:
- Deve utilizzare l'SDK di accesso Google ufficiale
- Deve seguire le linee guida di branding di Google
- Dovrebbe essere l'opzione principale se la offre
Miglior Pratica per piattaforme multiple: Offri le stesse opzioni di accesso su entrambe le piattaforme per coerenza:
- Email/parola d'ordine
- Accedi con Apple (disponibile solo su iOS, o su Android se supporti l'accesso web di Apple)
- Accedi con Google
- Altre opzioni sociali (Facebook, Twitter, ecc.)
Requisiti di account demo
Critico per la revisione: Se la tua app richiede l'accesso, devi fornire credenziali di demo funzionanti nelle Note di Valutazione dell'App.
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
Mistaccoli Comuni:
- Fornire credenziali scadute
- L'account demo non ha accesso a tutte le funzionalità
- Non menzionare come bypassare la verifica del telefono
- Dimenticare di menzionare i dettagli di pagamento del sandbox
Requisiti di Privacy e Legali
Ora entrambe le app store richiedono politiche di privacy accessibili e termini di servizio prima di approvare la tua prima presentazione.
Politica di Riservatezza Requisiti
La tua politica di riservatezza deve:
-
Sia Accessibile al Pubblico
- Hosted su una URL pubblica (non dietro login)
- Caricabile in browser web standard
- Disponibile nelle stesse lingue del tuo app
-
Copre questi argomenti obbligatori:
- Quali dati raccogli (sii specifico)
- Come utilizzi i dati raccolti
- Se i dati sono condivisi con terze parti
- Quanto tempo i dati sono conservati
- Diritti degli utenti (accesso, cancellazione, portabilità)
- Informazioni di contatto per richieste di riservatezza
- Riservatezza dei minori (se l'app è destinata a utenti sotto i 13/16 anni)
-
Essere Collegati Nell'App
- Accessibile dalla schermata delle impostazioni o dello schermo dell'account
- Deve essere a un solo tocco di distanza (non nascosto nelle menu)
- Dovrebbe aprirsi nel browser predefinito o nel browser in-app
Dove Alloggiare la Sua Politica di Riservatezza
Opzione 1: Il Suo Sito Web (Consigliato)
https://yourapp.com/privacy-policy
https://yourapp.com/terms-of-service
Opzione 2: GitHub Pagine (Gratuito)
https://yourusername.github.io/app-privacy-policy
Opzione 3: Generatori di Politiche di Riservatezza (Avvio Rapido)
Importante: Mentre i generatori sono adatti per l'avvio, assicurati che la politica rifletta con esattezza le tue pratiche di dati reali. I modelli generici che non corrispondono alla tua app saranno segnalati.
Requisiti per i Termini e le Condizioni
Sebbene non sia sempre obbligatorio, avere i Termini e le Condizioni è fortemente raccomandato e richiesto se:
- Offri acquisti in-app o abbonamenti
- Hai contenuti generati dagli utenti
- Fornisci qualsiasi servizio oltre alla funzionalità di base dell'app
- Desideri una protezione legale
Deve essere inclusa:
- Politica di utilizzo accettabile
- Condizioni di terminazione del conto
- Limitazione della responsabilità
- Diritti di proprietà intellettuale
- Procedura di risoluzione delle controversie
- Politica di rimborso (soprattutto per IAP)
Implementazione in-app
// 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>
);
}
Requisiti di metadati per l'App Store
Entrambi i negozi richiedono di fornire l'URL della politica sulla privacy durante la sottoscrizione dell'app:
iOS - App Store Connect:
- Informazioni sull'app > Informazioni generali > URL della politica sulla privacy
- Deve essere HTTPS (HTTP verrà rifiutato)
- Verrà visualizzato sulla tua pagina di App Store
- Aggiungi un URL di supporto con dettagli di contatto reali per gli utenti
- Completa il questionario di valutazione dell'età prima della sottoscrizione
Android - Console di Google Play:
- Presenza negli store > Impostazioni dello store > Informativa sulla privacy
- Obbligatorio per tutte le app che si rivolgono ai bambini
- Consigliato fortemente per tutte le app
Etichette di privacy (iOS)
iOS richiede dichiarazioni di privacy dettagliate in formato "etichetta nutrizionale":
Categorie che devi dichiarare:
- Informazioni di contattoDati email, nome, numero di telefono
- Informazioni finanziarieDati di pagamento, carta di credito, conto bancario
- PosizioneDati di posizione precisi o grossolani
- Contenuto dell'utenteFoto, video, audio, messaggi
- IdentificatoriID utente, ID dispositivo, ID pubblicitario
- Dati di utilizzoInterazione con il prodotto, dati pubblicitari, log di crash
- Dati di diagnostica: Dati di crash, dati di prestazioni
Specificare per ogni tipo di dati:
- Se viene raccolto
- Se viene collegato all'identità dell'utente
- Se viene utilizzato per il tracking
- Lo scopo della raccolta
Mistake comune: Dire di non raccogliere dati quando il tuo analytics SDK lo fa. Verifica tutti gli SDK di terze parti per la loro raccolta di dati.
Sezione Sicurezza dei Dati di Google Play
Simile all'iOS, Android richiede una dichiarazione di Sicurezza dei Dati:
Passaggi:
- Vai su Console di Gioco > Contenuto dell'app > Sicurezza dei Dati
- Rispondere alle domande sulla raccolta dei dati
- Specificare i tipi di dati raccolti
- Spiegare le pratiche di sicurezza (crittografia, ecc.)
- Fornire il link alla politica sulla privacy
Critico: Questa informazione è vincolante dal punto di vista legale. La rappresentazione errata può portare alla rimozione dell'app e alla sospensione del conto.
Motivi di Rifiuto Comuni per le App di Prima Volta
Capire perché le app vengono rifiutate aiuta a evitare questi ostacoli:
1. L'app si blocca o non si avvia
Perché Succede:
- Testare solo sull'emulatore, non sul dispositivo reale
- Mancanza di gestione degli errori per le fallite di rete
- Punti di fine endpoint hardcoded che non sono raggiungibili API
- Assumendo specifiche capacità del dispositivo (camera, GPS)
Come Prevenirlo:
// 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();
}
}
Elenco di controllo di test:
- Testare su dispositivi reali (almeno 2-3 modelli diversi)
- Testare con una rete lenta (utilizzare Network Link Conditioner)
- Testare con modalità aeroplano
- Testare con permessi negati
- Testare con installazione fresca (nessun dato memorizzato)
2. Funzionalità di base mancanti o rotte
Perché Succede:
- Le funzionalità mostrate nelle schermate non esistono ancora
- L'account di demo non ha accesso alle funzionalità pubblicizzate
- Le funzionalità premium sono mostrate ma non implementate
- I placeholder "In arrivo presto" nell'app
Come Prevenirlo:
- Invia solo quando tutte le funzionalità pubblicizzate sono complete
- Assicurati che l'account di demo abbia accesso completo
- Elimina o disabilita le funzionalità incomplete prima della sottoscrizione
- Aggiorna le schermate per corrispondere alla versione corrente esattamente
3. Contenuto inappropriato per la classificazione di età
Perché Succede:
- La classificazione di età impostata su 4+ ma l'app contiene funzionalità sociali
- La classificazione di età non corrisponde al contenuto effettivo
- Contenuto generato dall'utente senza moderazione
- Collegamenti a contenuti esterni non moderati
Come impostare la classificazione di età corretta:
Classificazioni di età per iOS:
- 4+ (nessun contenuto oggettibile)
- 9+ (contenuto lieve e sporadico)
- 12+ (contenuto moderato)
- 17+ (contenuto frequente/intenso)
Classificazioni di contenuto per Android:
- Tutti
- Tutti 10+
- Teen
- Maturi 17+
- Solo adulti 18+
Importante: Se gli utenti possono condividere contenuti tra loro, avete bisogno di:
- Sistema di moderazione del contenuto
- Funzionalità di segnalazione/blocco
- Linee guida della community chiare
- Blocco di età se necessario
4. Metadati ingannevoli o ingannatori
Perché Succede:
- Il nome dell'app promette funzionalità che non esistono
- Schermate di screenshot dei competitor o mockup
- Recensioni o manipolazione dei voti falsi
- La descrizione contiene superlativi senza prove
Esempi di metadati problematici:
❌ Cattivo:
- Nome dell'applicazione: “ Miglior Tracciatore di Fitness - #1 App”
- Descrizione: “L'applicazione più incredibile, rivoluzionaria mai creata!”
- Schermate: Foto di stock generiche
✅ Buono:
- Nome dell'applicazione: “FitTrack - Registro di allenamento”
- Descrizione: “Traccia i tuoi allenamenti con routine personalizzabili e grafici di progresso.”
- Schermate: Schermate reali dell'applicazione dal build corrente
5. Test insufficienti (Soprattutto test chiusi Android)
Perché Succede:
- Ssaltare il periodo di testing obbligatorio di 14 giorni
- Non reclutare abbastanza tester
- I tester non utilizzano effettivamente l'app
- Nessuna monitoraggio di crash durante il testing
Come Prevenirlo:
- Iniziare a reclutare i tester 3-4 settimane prima della data di lancio prevista
- Utilizzare Firebase Crashlytics o simili durante il testing
- Mantenersi coinvolti con i tester (questionari, moduli di feedback)
- Risolvere le questioni critiche prima di promuovere alla produzione
6. Autorizzazioni Senza Giustificazione
Perché Succede:
- Richiesta di ubicazione senza utilizzarla
- Autorizzazione alla camera senza spiegazione
- Accesso ai contatti senza scopo chiaro
- Ubicazione in background per app non di navigazione
Come Risolvere:
iOS - 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>
Estrategia di autorizzazioni per Android:
<!-- 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" /> -->
Richiesta di autorizzazione di 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.'
);
}
}
Requisiti specifici per iOS
Schermate e anteprime dell'App Store
Dimensioni richieste:
- iPhone 6.7”: 1290 x 2796
- 13” iPad: 2064 x 2752
- 12.9” iPad: 2048 x 2732
Importante: Se il tuo app supporta iPad, devi caricare screenshot di iPad. Non allungare screenshot di iPhone per adattarli ai slot di iPad.
Pratiche per le Screenshot:
- Deve mostrare contenuto dell'app reale (nessun mockup)
- Elimina la barra dello stato o mostra contenuto realistico
- Localizza per tutte le lingue supportate
- Evita sovrapposizioni di testo eccessive
- Mostra caratteristiche chiave nelle prime 2-3 screenshot
Impostazione dei Metadati di App Store Connect
Prima della sottoscrizione, completa questi campi di App Store Connect:
- Politica sulla privacy URL: richiesto per le app iOS
- URL del supporto: richiesto, e dovrebbe portare a informazioni di contatto reali
- Classificazione di età: completa il questionario per poter pubblicare l'app
- Informazioni sulla valutazione dell'app: aggiungi un contatto di recensione, le credenziali del demo se necessario, e note chiare per il team di recensione
- Compatibilità con le esportazioni: rispondi alle domande sull'encryption, o impostali
ITSAppUsesNonExemptEncryptioninInfo.plistquando opportuno, in modo da non ripetere le stesse risposte ogni volta che si carica
TestFlight Prima della Revisione dell'App
Esegui un passaggio di TestFlight reale prima della revisione di produzione:
- Installa la versione esatta da TestFlight
- Accedi con lo stesso account di revisione che intendi fornire
- Passa in rassegna la via di acquisto, il ripristino e l'annullamento
- Conferma che il revisore possa raggiungere le funzionalità chiave senza configurazioni nascoste
- Testa su iPhone e iPad se entrambi sono supportati
Video di anteprima dell'App (Facoltativo ma Raccomandato)
Requisiti:
- 15-30 secondi di lunghezza
- Deve mostrare footage dell'app reale
- Può includere sovraimpressioni di testo brevi
- Nessuna musica con problemi di copyright
- Stesse risoluzioni delle schermate di anteprima
Implementazione di accesso con Apple
Già trattato sopra, ma critico per la revisione di iOS se hai l'accesso sociale.
Requisiti per l'acquisto in-app
Se offri beni o servizi digitali:
Disclosures richiesti:
- Prezzi chiari prima dell'acquisto
- Termini di abbonamento chiaramente stabiliti
- Istruzioni per l'annullamento visibili
- Pulsante per il ripristino delle acquisti
Esempio di schermo di abbonamento conforme:
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>
);
}
Requisiti Specifici per Android
Configurazione dell'Account del Console di Gioco Play
Prima della tua prima rilascio di Android, assicurati che l'account del Console di Gioco e la shell dell'app esistano:
- Crea il tuo account di sviluppatore su Iscrizione al Console di Gioco
- In Console di Gioco, vai a Home > Crea app
- Scegli la lingua predefinita, tipo di app/gioco e indirizzo email di supporto
- Accetta le dichiarazioni di politica di Play richieste, esportazione e dichiarazioni di firma di app di Play
- Decidi se l'app è gratuito o pagato
Importante: Google ti consente di cambiare un'app pagata in gratuita in un secondo momento, ma una volta che un'app è stata offerta gratuitamente, non può essere cambiata in pagata.
Richiesta del Bundle dell'App
Importante: Google Play richiede il formato del bundle dell'app Android (.aab) e non APK:
# Sync the native Android project first
bunx cap sync android
# Then build the release app bundle
cd android
./gradlew bundleRelease
Livello di Obiettivo API Richiesta
Richiesta corrente: Le nuove app e gli aggiornamenti di app devono mirare all'Android 15 (API livello 35) o superiore.
Aggiornamento in android/app/build.gradle:
android {
compileSdkVersion 35
defaultConfig {
targetSdkVersion 35
minSdkVersion 23 // Minimum supported version
}
}
Sicurezza dei dati di Google Play
È già coperto sopra, ma assolutamente critico per l'approvazione Android.
Tracciato di Test di Chiusura (Requisito attuale)
Questo è il grande requisito per gli account di sviluppatore personali nuovamente creati: il requisito di 12 tester, 14 giorni dettagliato in precedenza in questo manuale.
Cronologia:
- Settimana 1: Recruita i tester, configura il test di chiusura
- Settimana 2-3: Periodo di test attivo (almeno 14 giorni)
- Settimana 4: Correggi gli errori, prepara la versione di produzione
- Settimana 5: Invia per la revisione di produzione
Pubblico di Riferimento e Classificazione dei Contenuti
Questionario di Classificazione dei Contenuti:
- Richiesto per tutte le app
- Richiede 10-15 minuti per completare
- Determina la classificazione di età (Tutti, Teen, Maturi, ecc.)
- Aggiornalo ogni volta che i contenuti cambiano in modo da influire sulle risposte
Argomenti trattati:
- Violenza
- Contenuto sessuale
- Parole volgari
- Sostanze controllate
- Gioco d'azzardo
- Funzionalità di interazione utente
ImportanteSe hai contenuti generati dagli utenti o funzionalità sociali, devi dichiararlo e implementare la moderazione.
Requisiti per la lista dello store
Risorse richieste:
- Icona dell'applicazione (512 x 512 PNG)
- Gravatura del feature (1024 x 500 JPG o PNG)
- Schermate del telefono (minimo 2, massimo 8)
- Schermate del tablet da 7” (facoltativo ma consigliato)
- Schermate del tablet da 10” (facoltativo ma consigliato)
Requisiti della descrizione:
- Descrizione breve (massimo 80 caratteri)
- Descrizione completa (massimo 4000 caratteri)
- Deve descrivere accuratamente la funzionalità dell'applicazione
- Non può includere informazioni di contatto o prezzi
Elenco di controllo pre-invio
Prima di inviare, passa attraverso questo elenco di controllo completo:
Requisiti Tecnici
- L'applicazione si avvia correttamente su dispositivi reali
- Tutte le funzionalità mostrate nelle schermate funzionano
- Nessun contenuto di placeholder o “Prossimamente”
- Tutti i chiavi di terze parti API sono chiavi di produzione
- Implementato il trattamento degli errori di rete
- Le richieste di autorizzazione includono spiegazioni chiare
- L'applicazione non si blocca in condizioni di rete povere
- Testata con autorizzazioni negate
- Testata sulla versione OS minima supportata
- Verificati e corretti i leak di memoria
Autenticazione & Accesso
- Se si utilizza l'accesso con account social, è incluso l'accesso con Apple (iOS)
- Credenziali di account demo fornite nelle note di revisione
- L'account demo ha accesso a tutte le funzionalità
- Funzionalità di reimpostazione della password funziona
- Funzionalità di logout funziona correttamente
- Opzione di cancellazione dell'account disponibile (richiesta da GDPR/CCPA)
Termini legali & Privacy
- Politica di privacy accessibile al pubblico
- URL della politica di privacy aggiunto alla lista degli store
- Termini di servizio accessibili al pubblico (se applicabile)
- Politica di privacy collegata in-app (schermo di impostazioni)
- Etichette di nutrizione della privacy accurate (iOS)
- Sezione sicurezza dei dati completata (Android)
- Tutti i motivi di raccolta dei dati spiegati
- Raccolta dei dati dei terzi SDK resa nota
Contenuto e Metadati
- Il nome dell'app segue le linee guida (nessun sovraccarico di parole chiave)
- La descrizione descrive accuratamente la funzionalità
- Le immagini mostrano le schermate effettive dell'app corrente
- Le immagini sono localizzate per tutte le lingue supportate
- Nessuna menzione di concorrenti nella descrizione
- Nessun superlativo senza prova
- La classificazione di età corrisponde al contenuto effettivo
- L'indirizzo email di contatto è monitorato
Specifico per iOS
- Implementato il login con Apple (se si utilizza il login sociale)
- Forniti tutti i dimensioni delle schermate richieste
- Caricati screenshot reali di iPad se supportato l'iPad
- Descrizioni delle autorizzazioni in Info.plist sono chiare
- Aggiunto URL di supporto con dettagli di contatto reali
- Aggiunto URL della politica sulla privacy in App Store Connect
- Completato il questionario di valutazione dell'età
- Risposte corrette per l'export compliance
- Fornito contatto per la revisione dell'app e account demo non scadibile
- Target iOS 15.0 o superiore
- Se IAP: prezzi chiari, presente il pulsante di ripristino delle acquisti
- Nessuna riferimento a Android o altre piattaforme
Specifico per Android
- Formato di bundle dell'applicazione (.aab) utilizzato
- Target API 35 o superiore
- Questionario di valutazione della classificazione del contenuto completato
- Immagine grafica caricata
- Test di chiusura completati se il tuo account di Console di Gioco richiede (12 tester, 14 giorni)
- Rapporti di crash da test esaminati e risolti
- Nessuna riferimento a iOS o altre piattaforme
Test (Requisito corrente di Android)
- 12+ tester reclutati se il tuo account di Gioco richiede test di chiusura
- Tracciato di test di chiusura creato
- 14 giorni consecutivi di testing completati
- I testatori hanno effettivamente utilizzato l'app (non solo installato)
- Il monitoraggio delle crash abilitato durante il testing
- Bug critici da testing risolti
- Feedback dai testatori documentati
Note di revisione: cosa includere
Le note di revisione eccellenti possono fare la differenza tra un approvazione immediata e una rifiuto. Ecco cosa includere:
Modello per Note di Revisione
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
Note di Revisione Specifiche per iOS
Per iOS, includere anche:
=== 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
Note di Revisione Specifiche per Android
Per Android, includere anche:
=== 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__
Non allarmarsi - la rifiutazione è comune, soprattutto per le prime presentazioni. Ecco come gestirla:
__CAPGO_KEEP_1__
-
Leggi attentamente la Rifiutazione
- Nota la specifica norma violata (ad esempio, 4.3, 5.1.1)
- Leggi attentamente i commenti del revisore
- Cerca screenshot se disponibili
-
Capisci il Problema
- Cerca la norma nella documentazione ufficiale
- Cerca casi simili online
- Controlla se si tratta di un malinteso o di un problema legittimo
-
Rendi efficace la Soluzione Radice
- Non patchare, ma risolvi correttamente
- Testa estensivamente la risoluzione del problema
- Documenta le modifiche apportate
-
Rispondi in modo appropriato
Se la rifiutazione è corretta:
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)Se credi che si tratti di un malinteso:
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. -
Ripresenta prontamente
- Le ripresentazioni sono generalmente esaminate più velocemente (24-48 ore)
- Includi note di revisione aggiornate che spiegano la risoluzione del problema
- Fai riferimento alla precedente presentazione se utile
Risposte di rifiuto comuni
Rifiuto: "La tua app si blocca al lancio"
Response:
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)
Rejection: “Mancanza di politica sulla privacy”
Response:
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.
Rejection: “Non rispetta la sezione 4.2 - Funzionalità minima”
Questo è più complicato. Significa che il tuo app non fa abbastanza per meritare di essere un'app. Response:
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.
Pratiche migliori dopo l'approvazione
Congratulazioni! La tua app è stata approvata. Ecco come mantenere quel status:
Monitoraggio dopo il lancio
Metriche critiche da monitorare:
- Tasso di crash (mantenere sotto l'1%)
- Tasso di blocco (Android - mantenere sotto lo 0,5%)
- Valutazioni di App Store/Play Store
- Recensione del contenuto (rispondi a tutte le recensioni)
- Bugs segnalati dagli utenti
Strumenti da utilizzare:
- Firebase Crashlytics
- App Store Connect Analytics
- Google Play Console Vitals
- Sentry o similare per il tracking degli errori
Linee guida per l'aggiornamento
Al momento di inviare gli aggiornamenti:
- Testa con la massima attenzione come alla prima sottoscrizione
- Aggiorna le schermate se il layout è cambiato significativamente
- Aggiorna le etichette sulla privacy se la raccolta dei dati è cambiata
- Fornisci descrizioni chiare delle novità
- Considera l'implementazione di roll-out a fasi per le modifiche principali
Mantenersi conformi
Requisiti annuali:
- Rinnova la classificazione Android del contenuto (richiesta ogni anno)
- Aggiorna la politica sulla privacy se le pratiche cambiano
- Verifica e aggiorna le classificazioni di età se il contenuto cambia
- Audit gli SDK di terze parti per la conformità
Monitoraggio Continuo:
- Resta aggiornato sulle modifiche alle linee guida
- Iscriviti alle newsletter dei developer di Apple/Google
- Partecipa alle comunità dei developer
- Segui i blog delle politiche di App Store/Play Store
Risorse e lettura ulteriore
Documentazione ufficiale
Apple:
- Linee guida di valutazione di App Store di Apple
- Accedi con Apple
- Aiuto per App Store Connect di Apple
- Privacy e utilizzo dei dati
Google:
- Centro delle politiche per sviluppatori di Google
- Elenco di controllo per il lancio
- Sezione sicurezza dei dati
- Linee guida di test
Risorse della community
- r/androiddev - Comunità di sviluppatori Android
- r/iOSProgramming - Comunità di sviluppatori iOS
- Stack Overflow - Domande tecniche
- Indie Hackers - Comunità di sviluppatori indie
Strumenti per la privacy
Hai bisogno di aiuto per la tua recensione dell'app?
Se ti senti sopraffatto o desideri una guida esperta per assicurarti che la tua app superi la revisione alla prima prova, siamo qui per aiutarti!
Prenota una chiamata di consultazione con il nostro team per assistenza personalizzata con:
- Preparazione della revisione dell'app Store e Play Store
- Revisione della politica di privacy e documentazione legale
- Implementazione di Sign in with Apple
- Strategia di testing e reclutamento di tester
- Preparazione delle note di revisione
- Risposta alle rimostranze e ricorso
- Completa il processo di invio dell'applicazione
Il nostro team ha aiutato centinaia di sviluppatori a superare con successo il processo di revisione dell'applicazione e può risparmiarvi settimane di errori e prove.
Conclusione
L'invio della tua prima app può essere intimidatorio, ma con una preparazione adeguata, puoi superare la revisione al primo tentativo. Ricorda questi punti chiave:
- Inizia presto: Soprattutto per Android - recluta almeno 12 tester 3 settimane prima della tua data di lancio pianificata
- Priva di informazioni: Assicurati di avere una politica sulla privacy pronta e rifletti accuratamente le tue pratiche sui dati
- Apple Sign-In: Se utilizzi qualsiasi tipo di accesso sociale, devi includere l'accesso con Apple su iOS
- Testa accuratamente: Testa su dispositivi reali, con reti lente e con permessi negati
- Sii Onesto : Metadati precisi e dichiarazioni sulla privacy prevenire rifiuti e problemi legali
- Note di Recensione Dettagliata : Aiuta i recensori a capire velocemente il tuo app
Le attuali richieste di testing per Android aggiungono tempo al processo, ma portano comunque a migliori app e meno problemi post-lancio. Pianifica altri 3-4 settimane per le sottoscrizioni di Android, e sarai ben posizionato per il successo.
Buona fortuna per il lancio del tuo app! Ricorda, anche se ti rifiutano, è un'opportunità di apprendimento. La maggior parte degli app di successo passa attraverso più round di revisione prima dell'approvazione.
Non vuoi procedere da solo? Prenota una consulenza e lascia che i nostri esperti ti guidino attraverso il processo.
Hai bisogno di aiuto per l'implementazione di aggiornamenti in tempo reale dopo che il tuo app è stato approvato? Controlla Capgo's soluzione per aggiornamenti in tempo reale per aggiornamenti app senza revisione dell'app store.