Invia la tua prima app su App Store o Play Store e può sembrare sovraccarico. Con linee guida in continua evoluzione e un controllo più stretto 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 recensione sulla tua prima sottoscrizione per entrambi i piattaforme iOS e Android.
Capire il processo di recensione nel 2026
Apple e Google hanno significativamente rafforzato i loro processi di recensione negli ultimi anni, con particolare enfasi sulla privacy, sulla sicurezza e sull'esperienza utente. Capire questi cambiamenti è cruciale per i primi sviluppatori.
Timeline della recensione di App Store iOS
- Recensione standard: 24-48 ore
- Periodi di punta: 3-5 giorni (soprattutto durante le stagioni festive)
- Fine settimana: Nessuna recensione elaborata
- Revisione accelerata: Disponibile per riparazioni di bug critici (deve essere richiesta attraverso App Store Connect)
Suggerimento Pro: Invia presto nella settimana (Lunedì-Martedì) per evitare ritardi di fine settimana. Le submission di Lunedì sono tipicamente esaminate da Mercoledì.
Stati di App Store Connect che Vedrai
- Preparati alla Sottomissione: La tua build o i metadati sono ancora in preparazione
- In attesa di Revisione: Apple ha la tua sottomissione in coda
- In Valutazione: Il team di revisione sta attivamente verificando l'app
- Rilascio del Sviluppatore in Sospeso: Approvato, ma in attesa della tua scelta di rilascio manuale
- Rifiutato / Problemi Insoluti: Apple richiede modifiche prima dell'approvazione
Timeline della Revisione di Google Play Store (Aggiornamento 2026)
- Revisione Iniziale: 3-7 giorni (significativamente più a lungo degli anni precedenti)
- Porta a Chiusura della Barriera di Test: 14 giorni minimi per i nuovi account personali di Play Console interessati prima che possa richiedere l'accesso alla produzione
- Revisione di Produzione Dopo i Test: Di solito altri 3-7 giorni dopo che è completa la richiesta di testing chiuso
- Aggiornamenti per Applicazioni Esistenti: 1-3 giorni
- Violazioni della Politica: Può estendersi a 14+ giorni se viene attivato un ulteriore controllo
Aggiornamento Importante: Google richiede ora un testing sostanzialmente più rigoroso per alcuni nuovi account di Console Play, di cui tratteremo in dettaglio di seguito.
Configurazione dell'Account dello Sviluppatore Apple
Prima della tua prima rilascio iOS, assicurati che la parte Apple sia configurata correttamente:
- Iscriviti al Programma dello Sviluppatore Apple
- 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 su App Store
- Società: richiede un'entità legale, un numero D-U-N-S, un sito web pubblico e una persona autorizzata a legare la società agli accordi di Apple
- Usa nomi legali durante l'iscrizione. Pseudonimi o nomi di società nei campi nome e cognome possono rallentare 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 cambia i requisiti minimi di SDK nel tempo. A partire da 28 aprile 2026, gli app caricati su App Store Connect devono utilizzare il iOS e iPadOS 26 SDK o successivi.
Il Requisito di Test di Android Critico
Questa è la modifica che coglie di sorpresa la maggior parte dei nuovi editori di Android:
12 Tester Requisito per Nuove Contabilità Android Personali
Se il tuo account di sviluppatore di Google Play è un account personale creato dopo il 13 novembre 2023, devi completare un periodo di testing chiuso prima che l'app possa andare in produzione:
Requisiti:
- Minimo 12 Testers: Devi reclutare almeno 12 tester che hanno accettato
- Periodo di Test 14 Giorni: L'applicazione deve rimanere in chiusura di test per almeno 14 giorni consecutivi
- Richiesta di Accesso alla Produzione: Dopo il periodo di test, è ancora necessario richiedere l'accesso alla produzione in Play Console
- Raccolta di Feedback: È necessario documentare gli issue trovati, le correzioni apportate e come i tester hanno utilizzato l'app
Come Configurare il Tuo Tracciato di Test
-
Crea un Tracciato di Test Chiuso
- Vai a Google Play Console
- Naviga a Test and release > Testing > Closed testing
- Crea una nuova versione nel tracciato di test chiuso
- Carica il tuo bundle di app Android (
.aab)
-
Recruita i tuoi tester
Dove trovare i tester:
- Amici e familiari (punto di partenza più facile)
- Comunità di sviluppatori (Reddit's /r/androiddev, /r/betatests)
- Follower dei social media
- Piattaforme di testing beta (BetaList, BetaTesting.com)
- Studenti universitari (se hai contatti)
Importante: Assicurati che i tester:
- Hanno account Gmail validi
- Usino effettivamente dispositivi Android
- Siano sempre iscritti durante l'intero periodo di 14 giorni
-
Invita i Testatori
- Crea una lista di testatori in Console di Gioco
- Aggiungi indirizzi email dei testatori
- Condividi l'URL di opt-in con i tuoi testatori
- Invia avvisi per assicurarti che installino e utilizzino l'app
-
Monitora l'attività di testing
- Controlla la Console di Gioco per i numeri di installazione
- Segui i rapporti di crash e ANR (Application Not Responding)
- Raccogli feedback dai testatori
- Risolve eventuali problemi critici prima della promozione
-
Promuovi a Produzione
- Dopo 14 giorni con 12+ testatori opt-in
- Richiedi l'accesso alla produzione dal pannello di controllo di Google Play
- Rivista tutti i rapporti di crash e le recensioni
- Crea una versione di produzione e presentala per la revisione finale
Perché Google ha implementato questo
Google ha introdotto questo requisito per:
- Ridurre lo spam di applicazioni di bassa qualità
- Assicurarsi che le applicazioni siano correttamente testate prima di raggiungere gli utenti
- Identificare le applicazioni maliziose attraverso i modelli di utilizzo reale
- Migliorare la qualità generale di Google Play Store
Reality CheckCiò aggiunge almeno 2-3 settimane al tuo piano 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 il login sociale.
Il requisito di accesso Apple (Critico per iOS)
La regola di Apple: Se il tuo app offre qualsiasi opzione di login 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/X Twitter
- Login LinkedIn
- Qualsiasi altro servizio di autenticazione di terze parti
Ciò NON si applica a:
- Autenticazione solo email/parola
- Sistemi di identificazione del governo
- Sistemi di autenticazione SSO aziendale (quando l'app è per quell'azienda specifica)
- Sistemi di autenticazione dei fornitori di servizi educativi
Implementare l'accesso con Apple
Se stai utilizzando l'accesso 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:
-
La privacy dell'emailGli utenti possono scegliere di nascondere la loro email. Apple fornisce un indirizzo email di relay privato (ad esempio,
abc123@privaterelay.appleid.comIl tuo app deve gestire questo. -
Utenti nuovi vs Utenti ritornanti: Apple fornisce solo i dettagli dell'utente (nome, email) nella prima autorizzazione. Salva questa informazione perché le successive connessioni non la includeranno.
-
Progetto del pulsante: Apple fornisce linee guida di progettazione rigorose per il pulsante di accesso con Apple. Utilizza i loro asset ufficiali.
-
Verifica del backend: Verifica sempre il token di identità sul tuo server backend, non fidarti mai dei token client-side da soli.
Requisiti di accesso sociale per Android
Mentre Android non richiede un provider specifico come iOS, Google ha linee guida:
Requisiti di Google Sign-In:
- Devi utilizzare l'SDK ufficiale di Google Sign-In
- Devi seguire le linee guida di branding di Google
- Dovrebbe essere l'opzione principale se lo offri
Miglior pratica per piattaforme crossOffri le stesse opzioni di accesso su entrambe le piattaforme per coerenza:
- Email/Password
- 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 dell'Account Demo
Critico per la RevisioneSe il tuo app richiede l'accesso, devi fornire credenziali demo funzionanti nelle Note della Revisione 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
Mistake comuni:
- Fornire credenziali scadute
- L'account di demo non ha accesso a tutte le funzionalità
- Non è menzionato come bypassare la verifica del telefono
- Dimenticando di menzionare i dettagli di pagamento del sandbox
Politica sulla privacy e Requisiti Legali
Ora entrambe le app store richiedono politiche sulla privacy e termini di servizio accessibili prima che la tua prima sottoscrizione venga approvata.
Requisiti della Politica sulla Privacy
La tua politica sulla privacy deve:
-
Essere Accessibile al pubblico
- Hosted su una pubblica URL (non dietro login)
- Caricabile in browser web standard
- Disponibile nelle stesse lingue del tuo app
-
Copri 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 le richieste di privacy
- Privacy dei minori (se l'app è destinata a utenti sotto i 13/16 anni)
-
Deve essere collegato all'interno dell'app
- Accessibile dalla schermata di impostazioni o account
- Deve essere a un solo tocco di distanza (non nascosto in menu)
- Dovrebbe aprirsi nel browser predefinito o nel browser in-app
Dove ospitare la tua politica sulla privacy
Opzione 1: Il tuo 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 sulla privacy (Avvio rapido)
Importante: Mentre i generatori sono adatti per l'inizio, assicurati che la politica rifletta accuratamente le tue pratiche di dati reali. Le modelli generici che non corrispondono alla tua app saranno segnalati.
Requisiti dei Termini e delle 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 la funzionalità di base dell'app
- Vuoi una protezione legale
Deve includere:
- Politica di utilizzo accettabile
- Condizioni di terminazione dell'account
- 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 dell'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 - Google Play Console:
- Presenza nel negozio > Impostazioni del negozio > Informativa sulla privacy
- Richiesto per tutte le app che si rivolgono ai bambini
- Consigliato fortemente per tutte le app
Etichette di nutrizione sulla privacy (iOS)
iOS richiede dettagliate dichiarazioni sulla privacy in formato di “etichetta di nutrizione”:
Categorie che devono essere dichiarate:
- Informazioni di contatto: Indirizzo e-mail, nome, numero di telefono
- Informazioni finanziarie: Informazioni di pagamento, carta di credito, conto bancario
- Posizione: Posizione precisa o grossolana
- Contenuto Utente: Foto, video, audio, messaggi
- Identificatori: ID Utente, ID dispositivo, ID pubblicitario
- Dati di Utilizzo: Interazione con il prodotto, dati pubblicitari, log di crash
- Dati di Diagnosi: 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
- L'obiettivo 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 a Console di gioco > Contenuto dell'app > Sicurezza dei dati
- Rispondi alle domande sulla raccolta di dati
- Specifica i tipi di dati raccolti
- Spiega le pratiche di sicurezza (crittografia, ecc.)
- Fornisci il link alla politica sulla privacy
Critico: Questa informazione è vincolante dal punto di vista legale. La rappresentazione falsa può portare alla rimozione dell'app e alla sospensione dell'account.
Motivi comuni di rifiuto per la prima volta
La comprensione di come 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 su dispositivi reali
- Mancanza di gestione degli errori per le connessioni di rete
- Hardcoded API endpoints that are unreachable
- Assumere specifiche capacità del dispositivo (camera, GPS)
Come Prevenire:
// 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();
}
}
Checklist di Test:
- Testare su dispositivi reali (almeno 2-3 modelli diversi)
- Testare con una rete scarsa (utilizzare Network Link Conditioner)
- Testare con modalità aereo
- Testare con permessi negati
- Testare con installazione fresca (nessuna dati memorizzati)
2. Funzionalità di base mancanti o rotte
Perché Succede:
- Le funzionalità mostrate nelle schermate non esistono ancora
- L'account demo non ha accesso alle funzionalità pubblicizzate
- Le funzionalità premium sono mostrate ma non sono state implementate
- I placeholder "In arrivo presto" nell'app
Come Prevenirlo:
- Invia solo quando tutte le funzionalità pubblicizzate sono complete
- Assicurati che l'account demo abbia accesso completo
- Elimina o disabilita le funzionalità incomplete prima della sottoscrizione
- Aggiorna le schermate per corrispondere esattamente alla versione corrente
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 contenuto esterno non moderato
Come Impostare la Classificazione di Età Corretta:
Classificazioni di Età per iOS:
- 4+ (nessun contenuto oggettibile)
- 9+ (contenuto leggero occasionalmente)
- 12+ (contenuto moderato)
- 17+ (contenuto frequente/intenso)
Classifiche del contenuto per Android:
- Tutti
- Tutti 10+
- Giovani
- Maturi 17+
- Solo adulti 18+
Importante: Se gli utenti possono condividere contenuti tra loro, è necessario:
- Sistema di moderazione del contenuto
- Funzionalità del blocco del rapporto
- Linee guida della community protette
- Blocco di età se necessario
4. Metadati ingannevoli o ingannevoli
Perché Succede:
- Il nome dell'app promette funzionalità che non esistono
- Schermate dei concorrenti o mockup
- Recensioni o manipolazione delle valutazioni false
- La descrizione contiene superlativi senza prova
Esempi di Metadati problematici:
❌ Cattivo:
- Nome dell'app: “ Miglior Tracciatore di Fitness - #1 App”
- Descrizione: “L'app più incredibile e rivoluzionaria mai creata!”
- Schermate: Immagini di stock generiche
✅ BUONO:
- Nome dell'app: “FitTrack - Registro di allenamento”
- Descrizione: “Segui i tuoi allenamenti con routine personalizzabili e grafici di progresso.”
- Schermate: Schermate dell'app attuali dal build corrente
6. Test insufficienti (Soprattutto test chiusi Android)
Perché Succede:
- Svoltare il periodo di testing richiesto di 14 giorni
- Non reclutare abbastanza tester
- I tester non utilizzano effettivamente l'app
- Nessuna monitoraggio di crash durante il testing
Come Prevenire:
- Inizia a reclutare i tester 3-4 settimane prima della data di lancio pianificata
- Utilizza Firebase Crashlytics o un analogo durante le prove
- Interagisci attivamente con i tester (questionari, moduli di feedback)
- Risolve i problemi critici prima di promuovere alla produzione
6. Autorizzazioni Senza Giustificazione
Perché Succede:
- Richiesta di posizione senza utilizzarla
- Autorizzazione alla camera senza spiegazione
- Accesso ai contatti senza un chiaro scopo
- Posizione di background per app non di navigazione
Come Risolvere:
iOS - File di configurazione di sistema:
<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 - Strategia per le autorizzazioni:
<!-- 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 in esecuzione:
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:
- 6.7” iPhone: 1290 x 2796
- 13” iPad: 2064 x 2752
- 12.9” iPad: 2048 x 2732
Importante: Se il tuo app supporta l'iPad, devi caricare le schermate dell'iPad. Non allungare le schermate iPhone per adattarle ai slot dell'iPad.
Pratiche migliori per le schermate:
- Deve mostrare contenuto dell'app reale (nessun mockup)
- Eliminare la barra dello stato o mostrare contenuto realistico
- Localizzare per tutte le lingue supportate
- Evitare sovrapposizioni di testo eccessive
- Mostrare le principali funzionalità nelle prime 2-3 schermate
Impostazione dei metadati di App Store Connect
Prima della sottoscrizione, completare questi campi di App Store Connect:
- URL della politica sulla privacy: richiesto per le app iOS
- URL del supporto: richiesto e dovrebbe condurre a informazioni di contatto reali
- Classificazione di età: completare il questionario per poter pubblicare l'app
- Informazioni di Valutazione dell'App: aggiungere un contatto di recensione, le credenziali del demo in funzione dell'autenticazione richiesta, e note chiare per il team di recensione
- Compatibilità con le Esportazioni: rispondere alle domande di crittografia, o impostare
ITSAppUsesNonExemptEncryptioninInfo.plistquando opportuno, in modo da non ripetere le stesse risposte ogni volta che si effettua l'upload
TestFlight Prima della Valutazione dell'App
Eseguire un passaggio di TestFlight reale prima della valutazione di produzione:
- Installare l'edizione esatta da TestFlight
- Accedere con lo stesso account di recensione che si prevede di fornire
- Percorrere il percorso di acquisto, di ripristino e di cancellazione
- Confermare che il revisore possa raggiungere le funzionalità chiave senza una configurazione nascosta
- Testare su iPhone e iPad se entrambi sono supportati
Video 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
Implementazione dell'accesso con Apple
Già coperto sopra, ma critico per la revisione di iOS se hai il login sociale
Requisiti per le compravendite in-app
Se offri beni o servizi digitali:
Informazioni sulla protezione dei dati:
- 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
Prima della tua prima pubblicazione Android, assicurati che l'account del Console e la shell dell'app esistano:
- Crea il tuo account di sviluppatore su Iscriviti 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 richieste, esportazione e dichiarazioni di firma dell'app di Google Play
- Decidi se l'app è gratuito o a pagamento
Importante: Google ti consente di cambiare un'app a pagamento in gratuita in un secondo momento, ma una volta che un'app è stata offerta gratuitamente, non può essere cambiata in a pagamento.
Requisito dell'App Bundle
Importante: Google Play richiede formato bundle 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
Requisito di Livello API Obiettivo
Requisito Corrente: Nuove applicazioni e aggiornamenti di app devono mirare a Android 15 (API livello 35) o superiore.
Aggiorna in android/app/build.gradle:
android {
compileSdkVersion 35
defaultConfig {
targetSdkVersion 35
minSdkVersion 23 // Minimum supported version
}
}
Sicurezza dei dati Google Play
Già coperto sopra, ma assolutamente critico per l'approvazione Android.
Tracciato di Test chiuso (Requisito Corrente)
Questo è il grande punto per i nuovi account di sviluppatore personali: il requisito dei 12 tester, 14 giorni dettagliato in precedenza in questo manuale.
Timeline:
- Settimana 1: Recruita i tester, configura il test chiuso
- Settimana 2-3: Periodo di test attivo (14 giorni minimo)
- Settimana 4: Risolvi gli issue, prepara la versione di produzione
- Settimana 5: Invia per la revisione di produzione
Pubblico di riferimento e Classificazione del contenuto
Questionario di Classificazione del contenuto:
- Richiesto per tutte le app
- Richiede 10-15 minuti per completare
- Determina la classificazione di età (Tutti, Teen, Maturi, ecc.)
- Aggiornalo ogni volta che il tuo contenuto cambia in modo che influisca sulle risposte
Argomenti trattati:
- Violenza
- Contenuto sessuale
- Parole volgari
- Sostanze controllate
- Gioco d'azzardo
- Caratteristiche di interazione utente
Importante: Se hai contenuti generati dagli utenti o caratteristiche sociali, devi rivelare questo e implementare la moderazione.
Requisiti per la lista degli store
Risorse richieste:
- Icona dell'applicazione (512 x 512 PNG)
- Immagine grafica 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)
Descrizione Requisiti:
- Breve descrizione (massimo 80 caratteri)
- Descrizione completa (massimo 4000 caratteri)
- Deve descrivere correttamente la funzionalità dell'app
- 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'app si avvia correttamente su dispositivi reali
- Tutte le funzionalità mostrate nelle schermate funzionano
- Non ci sono contenuti di placeholder o “Prossimamente”
- Tutti i chiavi di terze parti API sono chiavi di produzione
- Gestione degli errori di rete implementata
- Le richieste di autorizzazione includono spiegazioni chiare
- L'app non si blocca nelle condizioni di rete povere
- Testato con autorizzazioni negate
- Testato sulla versione OS minima supportata
- Verificati e risolti i leak di memoria
Autenticazione & Accesso
- Se si utilizza l'accesso sociale, incluso il Sign in with Apple (iOS)
- I credenziali dell'account demo sono forniti nelle note di revisione
- L'account demo ha accesso a tutte le funzionalità
- Il flusso di reset della password funziona
- La funzionalità di logout funziona correttamente
- Opzione di cancellazione dell'account disponibile (richiesta da GDPR/CCPA)
Legale & Privacy
- Politica sulla privacy accessibile al pubblico
- URL della politica sulla privacy aggiunto alla lista degli store dell'app
- Termini di servizio accessibili al pubblico (se applicabile)
- Politica sulla privacy collegata all'interno dell'app (schermo di impostazioni)
- Etichette nutrizionali sulla privacy accurate (iOS)
- Sezione sulla sicurezza dei dati completata (Android)
- Tutti i motivi di raccolta dei dati spiegati
- Raccolta dei dati di terze parti SDK dichiarata
Contenuto & Metadati
- Nome dell'app segue le linee guida (nessun stuffing di parole chiave)
- La descrizione descrive con precisione la funzionalità
- Le schermate mostrano le schermate attuali dell'app corrente
- Le schermate sono localizzate per tutte le lingue supportate
- Nessuna menzione dei concorrenti nella descrizione
- Nessun superlativo senza prova
- La classificazione per età corrisponde al contenuto reale
- L'indirizzo email di contatto è monitorato
Specifico per iOS
- Implementato l'accesso con Apple (se si utilizza l'accesso sociale)
- Fornite tutte le dimensioni delle schermate richieste
- Caricate le vere schermate di iPad se il supporto iPad è abilitato
- Le descrizioni delle autorizzazioni di Info.plist sono chiare
- URL di supporto aggiunto con dettagli di contatto reali
- URL della politica sulla privacy aggiunto in App Store Connect
- Questionario di valutazione dell'età completato
- Risposte corrette per l'adeguamento alle norme di esportazione
- Contatto per la revisione dell'app e account demo non scadibile fornito
- Target iOS 15.0 o superiore
- Se IAP: prezzi chiari, pulsante di ripristino delle acquisti presente
- Assenza di riferimenti a Android o altre piattaforme
Specifico per Android
- Formato di bundle dell'app (.aab) utilizzato
- Target API 35 o superiore
- Questionario di valutazione della classificazione dei contenuti 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 per Android)
- 12+ tester reclutati se il tuo account di Gioco richiede test di chiusura
- Pista di test di chiusura creata
- 14 giorni consecutivi di test completati
- I tester hanno effettivamente utilizzato l'app (non solo installata)
- Monitoraggio di crash abilitato durante i test
- Bachi critici da test risolti
- Feedback dai tester documentati
Nota di Revisione: Cosa Includere
Le note di revisione eccellenti possono fare la differenza tra approvazione immediata e 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, includi 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, includi 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
Cosa Fare se Rifiutato
Non panichiamo - il rifiuto è comune, soprattutto per le prime presentazioni. Ecco come gestirlo:
Passaggi dopo il Rifiuto
-
Leggi attentamente la Notifica di Rifiuto
- Nota la specifica norma violata (ad esempio, 4.3, 5.1.1)
- Leggi attentamente le commenti del revisore
- Cerca le schermate se disponibili
-
Capisci il problema
- Ricerca la linea guida nella documentazione ufficiale
- Cerca casi simili online
- Controlla se si tratta di un malinteso o di un problema legittimo
-
Risolve la causa radice
- Non si tratta solo di patchare - risolvi correttamente
- Testa estensivamente la soluzione
- 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 ritiene una malintesa:
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. -
Risubmetti prontamente
- Le risubmissioni vengono solitamente esaminate più velocemente (24-48 ore)
- Includere note di revisione aggiornate che spiegano il riparo
- Riferirsi alla precedente sottoscrizione se utile
Risposte di Rifiuto Comuni
Rifiuto: “L'applicazione si blocca al lancio”
Risposta:
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)
Rifiuto: “Mancanza di politica sulla privacy”
Risposta:
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.
Rifiuto: “Non rispetta la sezione 4.2 - Funzionalità Minima”
Questo è più complicato. Significa che l'app non fa abbastanza per meritare di essere un'app. Risposta:
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.
__CAPGO_KEEP_0__
Congratulazioni! La tua app è stata approvata. Ecco come mantenere questo status:
__CAPGO_KEEP_1__
Metriche Critiche da Monitorare:
- Tasso di crash (mantenere al di sotto del 1%)
- Tasso di blocco (Android - mantenere al di sotto del 0,5%)
- Recensioni di App Store/Play Store
- Contenuto delle recensioni (rispondere a tutte le recensioni)
- Bug segnalati dagli utenti
Strumenti da Utilizzare:
- Firebase Crashlytics
- App Store Connect Analytics
- Console dei Giochi di Google Vitals
- Sentry o similare tracciamento degli errori
Linee guida per l'aggiornamento
Quando si inviano aggiornamenti:
- Testa con la massima attenzione come la sottoscrizione iniziale
- 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 i rilasci in fasi per le modifiche principali
Mantenere la conformità
Requisiti annuali:
- Rinnova la classificazione dei contenuti Android (richiesta ogni anno)
- Aggiorna la politica sulla privacy se le pratiche cambiano
- Verifica e aggiorna le classifiche 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 linee guida di App Store/Play Store
Risorse e Letture ulteriori
Documentazione Ufficiale
Apple:
- Linee guida di revisione dell'App Store
- Accedi con Apple
- Aiuto per App Store Connect
- Privacy e utilizzo dei dati
Google:
- Centro delle politiche per gli sviluppatori
- Elenco di controllo per il lancio
- Sezione sicurezza dei dati
- Linee guida per le prove
Risorse della community
- r/androiddev - Comunità degli sviluppatori Android
- r/iOSProgramming - comunità di sviluppatori iOS
- Stack Overflow - Domande tecniche
- Indie Hackers - Comunità di sviluppatori indie
Politiche sulla privacy
Hai bisogno di aiuto per la tua valutazione dell'app?
Se ti senti sopraffatto o vuoi una guida esperta per assicurarti che la tua app superi la valutazione al primo tentativo, siamo qui per aiutarti!
Prenota un appuntamento di consulenza con il nostro team per assistenza personalizzata con:
- Preparazione delle recensioni per l'App Store e Play Store
- Revisione della politica sulla privacy e della documentazione legale
- Implementazione dell'accesso con Apple
- Definizione della strategia di testing e reclutamento dei tester
- Preparazione delle note di revisione
- Risposta alle rimostranze e alle appelli
- Processo di presentazione completa dell'app
Il nostro team ha aiutato centinaia di sviluppatori a superare con successo il processo di revisione dell'app e può risparmiarvi settimane di errori e prove
Conclusione
La presentazione della tua prima app può essere intimidatoria, 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 almeno 3 settimane prima della tua data di lancio
- Prima della Privacy: Assicurati di avere la tua politica sulla privacy pronta e di riflettere 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 con Attenzione: Testa su dispositivi reali, con reti deboli e con permessi negati
- Sii Onesto: Metadati e dichiarazioni sulla privacy accurate prevenire la rifiutazione e le questioni legali
- Note di Revisione Dettagliate: Aiuta i revisori a capire il tuo app velocemente
I requisiti di testing Android attuali aggiungono tempo al processo, ma risultano in app migliori e in pochi problemi post-lancio. Pianifica un extra 3-4 settimane per le sottoscrizioni Android, e sarai ben posizionato per il successo.
Buona fortuna per il lancio della tua 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 nel processo.
Hai bisogno di aiuto per l'implementazione di aggiornamenti in tempo reale dopo che la tua app è stata approvata? Controlla Capgo's soluzione per aggiornamenti in tempo reale per aggiornamenti di app senza revisione degli store.