Impedire le modifiche e la ridistribuzione non autorizzate con Protezione automatica

Nota: al momento le funzionalità descritte in questa pagina sono disponibili solo per partner selezionati di Google Play.

Protezione automatica di Google Play è un servizio che ti consente di proteggere le tue app e i tuoi giochi da abusi dell'integrità sotto forma di modifiche e ridistribuzione non autorizzate. Protezione automatica funziona nella tua app senza connessione dati. Può essere attivata con un solo clic in Play Console e non richiede alcuna operazione da parte dello sviluppatore prima del test né l'integrazione del server di backend.

Come funziona

Protezione automatica aggiunge al codice della tua app controlli di runtime per limitare le modifiche e la ridistribuzione, rendendoli difficili da rimuovere tramite tecniche avanzate di offuscamento e anti-reverse engineering. Se il controllo del programma di installazione non viene superato, agli utenti verrà chiesto di scaricare la tua app da Google Play. Se il controllo delle modifiche non viene superato, l'app non verrà eseguita. Questi meccanismi aiutano a proteggere gli utenti da contenuti dannosi che possono apparire nelle versioni modificate dell'app.

Protezione automatica è progettata per:

  • Impedire la modifica non autorizzata: Protezione automatica aiuta a proteggere la tua app dalle modifiche, rendendo più difficile la distribuzione di copie non ufficiali con comportamento alterato (ad esempio rimozione della fatturazione, aggiunta di annunci, modifica dell'ID proprietario dell'annuncio o aggiunta di malware).
  • Impedire la pirateria di app a pagamento: Protezione automatica impedisce la pirateria chiedendo agli utenti che ricevono, attraverso una fonte non ufficiale, la versione non modificata di Google Play della tua app di acquistarla su Google Play. Questo prompt è facoltativo e può essere disattivato deselezionando "Richiedi l'installazione da Google Play" nella pagina di configurazione di Protezione automatica dell'integrità.
  • Aumentare il numero di utenti che ricevono aggiornamenti ufficiali: Protezione automatica può richiedere agli utenti che eseguono l'installazione tramite sideload della versione non modificata di Google Play della tua app di aggiungerla alla propria raccolta Google Play, per garantire che possano ricevere i relativi aggiornamenti. Questo prompt è facoltativo e può essere disattivato deselezionando "Richiedi l'installazione da Google Play" nella pagina di configurazione di Protezione automatica dell'integrità.
Importante: Protezione automatica non garantisce la prevenzione di tutti i casi di crack, pirateria, ripacchettizzazione e ridistribuzione, ma rende queste operazioni più difficili e costose, riducendone pertanto la probabilità di successo. Google Play continuerà a ottimizzare Protezione automatica in modo che le nuove release della tua app ricevano automaticamente la versione più recente e avanzata di questa funzionalità.

Configurare Protezione automatica

I passaggi riportati di seguito descrivono cosa devi fare per iniziare a utilizzare le funzionalità di Protezione automatica. Fai clic su una sezione per espanderla.

Prerequisiti

Se attivi Protezione automatica per una determinata app, Google Play aggiungerà automaticamente la protezione a ogni release che crei e rendi disponibile per la distribuzione sui dispositivi. La protezione richiede che Google Play crei APK modificati e li firmi per tuo conto, pertanto devi:

Tieni presente i seguenti vincoli:

  • Protezione automatica è supportata solo su Android 6.0 Marshmallow (livello API 23) e versioni successive. Android M è stata rilasciata nel 2015 e, a partire dal 2023, avere come targeting un midSDK di almeno 23 anni raggiungerà oltre il 97% dei dispositivi Android attivi.
  • Protezione automatica supporta le seguenti ABI: x86, x86_64, armeabi-v7a e arm64-v8a. Per aggiornare le ABI target della tua app, aggiorna le impostazioni di Gradle. Altre ABI che non vengono utilizzate dai dispositivi Android attivi possono essere rimosse dal targeting senza che questo influisca sulla disponibilità dell'app.
  • Protezione automatica può essere usata offline. Tuttavia, l'opzione "Richiedi l'installazione da Google Play" richiede periodicamente una connessione dati se l'app Play Store sul dispositivo è rimasta offline per un periodo prolungato.
  • Se la tua app utilizza già Google Play Licensing, devi disattivare l'opzione "Richiedi l'installazione da Google Play".
  • Quando carichi l'app in condivisione interna delle app, la protezione non viene applicata. Presta particolare attenzione a condividere i link di condivisione interna delle app esclusivamente con membri fidati del team e a evitare la condivisione esterna di versioni non protette.
  • Protezione automatica non è compatibile con la trasparenza del codice per gli app bundle, poiché la protezione dell'integrità comporta la modifica del codice. Gli app bundle caricati con la trasparenza del codice quando è attiva Protezione automatica verranno rifiutati.
  • Le app istantanee non sono protette. Per ricevere la protezione, l'app bundle nei canali di release non deve essere ad attivazione istantanea. Puoi caricare simultaneamente un app bundle nel tuo canale di release che riceve la protezione e un app bundle ad attivazione istantanea nel tuo canale solo ad attivazione istantanea che non riceve alcuna protezione.
Passaggio 1: attiva la protezione

Crea una release come descritto nel passaggio 1 della pagina Preparare e implementare una release.

Puoi attivare la protezione durante la creazione di una release (come descritto nel passaggio 2 della pagina Preparare e implementare una release) oppure puoi farlo nella pagina Integrità dell'app (

Testa e rilascia

> Integrità dell'app), che contiene servizi per l'integrità e la firma che ti aiutano ad assicurarti che gli utenti possano usare le tue app e i tuoi giochi come previsto.

Durante la preparazione della release, vedrai un pulsante Ottieni la protezione dell'integrità o Gestisci la protezione dell'integrità. Dopodiché puoi attivare la protezione dell'integrità facendo clic su Sì, attiva nella sezione "Protezione automatica". Google Play firmerà le tue release e aggiungerà la protezione dell'integrità per limitare manomissioni e distribuzione non autorizzata. Ciò significa che la Protezione automatica è attiva.

Completa la preparazione della release e salva le modifiche.

Passaggio 2: verifica l'app protetta

Utilizza ogni canale di test per testare la versione protetta dell'app e assicurarti che non vi siano conseguenze impreviste in termini di esperienza utente o prestazioni.

Consigliamo di includere nella revisione le seguenti azioni:

  • Testa la fase di avvio del gioco per rilevare eventuali arresti anomali all'avvio o rallentamenti nei tempi di avvio.
  • Testa i momenti in cui il tuo codice nativo (C/C++) richiama Java (nel tuo codice o nelle librerie di terze parti), ad esempio per gli annunci, il logging, l'integrazione con i social, l'autenticazione o funzionalità specifiche di Android, come la gestione delle autorizzazioni.

Se riscontri problemi durante la procedura di test, hai la possibilità di ripristinare una versione precedente della Protezione automatica che potresti aver già utilizzato in una release precedente oppure di disattivare questa funzionalità. Tuttavia, ti consigliamo di non promuovere versioni non protette nei canali aperti o di produzione.

Per disattivare la protezione dell'integrità per una singola release:

  1. Durante la preparazione della release, fai clic su Gestisci la protezione dell'integrità.
  2. Nella sezione "Protezione automatica", seleziona Protezione precedente o Disattiva la protezione per questa release.
  3. Salva le modifiche. Le modifiche verranno applicate a questa release. La release successiva che caricherai riceverà di nuovo la versione della protezione più recente ed efficace.
Passaggio 3: promuovi la tua app nel canale di produzione

Quando è tutto pronto, puoi implementare la release in un canale di produzione in Play Console, mettendo la tua app protetta a disposizione di tutti gli utenti di Google Play nei paesi da te selezionati.

Personalizzare la scheda dello Store quando gli utenti la visitano dalle finestre di dialogo di Protezione dell'integrità

Protezione automatica può chiedere agli utenti che hanno ottenuto la tua app in modo non ufficiale di scaricarla da Google Play. Quando gli utenti toccano la finestra di dialogo, vengono reindirizzati alla tua scheda dello Store, dove possono toccare i pulsanti Installa, Acquista o Aggiorna per scaricare l'app da Google Play e aggiungerla alla raccolta di Google Play dell'utente.

Puoi personalizzare gli asset della scheda dello Store per tutti i visitatori che toccano le finestre di dialogo di Protezione dell'integrità, nonché il nome, l'icona, le descrizioni e le risorse grafiche della tua app. Per personalizzare la tua scheda dello Store quando gli utenti la visitano da una finestra di dialogo di Protezione dell'integrità:

  1. Apri Play Console e vai alla pagina Integrità dell'app

    Testa e rilascia

    > Integrità dell'app).
  2. Scorri fino alla sezione "API Play Integrity".
  3. Fai clic su Impostazioni.
  4. Scorri fino alla sezione "Personalizza scheda dello Store".
  5. Fai clic su Crea scheda.
  6. Segui le istruzioni nella pagina Crea scheda dello Store personalizzata e fai clic su Salva.

In alternativa, puoi creare schede dello Store personalizzate per le finestre di dialogo di Protezione dell'integrità direttamente dalla pagina Schede dello Store personalizzate:

  1. Apri Play Console e vai alla pagina Schede dello Store personalizzate (Aumenta il numero di utenti > Schede dello Store personalizzate).
  2. Fai clic su Crea scheda, scegli se creare una nuova scheda o duplicarne una esistente, quindi fai clic su Avanti.
  3. Nella sezione "Dettagli scheda", scorri fino a Pubblico di destinazione.
  4. Seleziona Tramite URL e inserisci "playintegrity" nella casella di testo.
  5. Compila tutti gli altri dettagli e fai clic su Salva.

Suggerimento: il parametro URL "playintegrity" è una parola chiave speciale riservata ai link diretti per l'integrità, quindi deve essere inserito in modo corretto durante la configurazione della scheda dello Store personalizzata.

Pratiche consigliate

Non rilasciare versioni di app non protette

Se pubblichi versioni non protette in canali aperti o su altri canali esterni a Google Play, la protezione dell'app non funzionerà più. Per assicurare la protezione dell'integrità della tua app, è opportuno pubblicarne solo versioni protette nei canali aperti e di produzione.

Fare attenzione quando si combinano soluzioni di protezione dalle manomissioni

Protezione automatica potrebbe non essere compatibile con altre soluzioni di runtime anti-manomissione e il loro utilizzo combinato potrebbe causare problemi agli utenti. Se la tua app utilizza già Google Play Licensing, devi disattivare l'opzione "Richiedi l'installazione da Google Play". Se la tua app esegue altri controlli di runtime, prima di rilasciarla per i canali aperti, assicurati di testarla accuratamente per individuare potenziali problemi.

Testare l'app protetta

Google Play pubblicherà automaticamente build protette in tutti i canali: test interni, chiusi, aperti e di produzione. Ti consigliamo di effettuare, come di consueto, test approfonditi di queste versioni.

Se carichi la build dell'app direttamente in condivisione interna delle app, Google Play non aggiungerà protezioni, così potrai utilizzare condivisione interna delle app per caricare build di debug e altre build simili.

Quando accedi a un link di condivisione interna delle app per una versione protetta dell'app su Explorer per app bundle, la build viene condivisa esattamente come è stata elaborata da Google Play. Se questa versione dell'app è stata protetta e caricata in un canale di test, il link di condivisione interna dell'app proveniente da Explorer per app bundle pubblicherà una versione protetta. Puoi visualizzare lo stato della protezione nella scheda Dettagli di Explorer per app bundle.

Monitorare gli arresti anomali

Una conseguenza della protezione della tua app è il possibile aumento del numero di arresti anomali, che normalmente indica che Protezione automatica funziona come previsto. Se un utente malintenzionato modifica la tua app senza successo, il controllo di runtime impedisce l'esecuzione dell'app, nella maggior parte dei casi mediante arresto anomalo.

Gli arresti anomali non attribuiti a Google Play non influiscono sulle metriche di stabilità di Android vitals. Se utilizzi altri strumenti per analizzare gli arresti anomali, ad esempio Crashlytics, e ti serve un nome pacchetto da utilizzare come filtro di origine installazione, il nome pacchetto del Google Play Store è "com.android.vending".

Se l'effetto negativo dell'aumento degli arresti anomali ti preoccupa, puoi segnalarcelo nel modo più dettagliato possibile e il nostro team esaminerà il problema. Risponderemo alla tua segnalazione se stabiliamo che gli arresti anomali riguardano la protezione.

Segnalare le versioni con crack dell'app

Una versione con crack è una versione dell'app che continua a funzionare anche se è stata modificata oppure installata all'esterno di Google Play, quando è invece richiesta l'installazione da Google Play.

Se hai identificato una versione dell'app con cracking, puoi segnalarcela.

Miglioramento della protezione dalle manomissioni

La condivisione della telemetria dell'app, ad esempio dati sull'ambiente e sul rendimento anonimizzati, con Google Play ci aiuta a migliorare la resilienza e le prestazioni della protezione dalle manomissioni. Puoi disattivare la condivisione della telemetria dell'app disattivando l'opzione "Condividi la telemetria dell'app con Google" nella pagina Impostazioni di protezione automatica (

Testa e rilascia

> Integrità dell'app e scorri verso il basso fino a Protezione automatica). Scopri di più su come vengono utilizzati i dati per sviluppare i servizi Google.

Contenuti correlati

È stato utile?

Come possiamo migliorare l'articolo?

Hai bisogno di ulteriore assistenza?

Prova i passaggi successivi indicati di seguito:

Ricerca
Cancella ricerca
Chiudi ricerca
Menu principale
13468834161387302896
true
Cerca nel Centro assistenza
true
true
true
true
true
92637
false
false