Questo documento offre una panoramica generale delle fasi tipiche di sviluppo e test che possono aiutarti a creare un piano di preparazione ben allineato alla sequenza temporale di rilascio della piattaforma e a garantire un'esperienza ottimale per gli utenti su Android 13.
Con ogni release di Android, introduciamo nuove funzionalità e modifiche al comportamento volte a rendere Android più utile, sicuro e performant. In molti casi, la tua app funzionerà esattamente come previsto, mentre in altri casi potrebbe essere necessario aggiornarla per adattarla alle modifiche della piattaforma.
Gli utenti possono iniziare a ricevere la nuova piattaforma non appena il codice sorgente viene rilasciato in AOSP (Android Open Source Project), quindi è importante che le tue app siano pronte, funzionino come previsto per gli utenti e, idealmente, sfruttino le nuove funzionalità e API per ottenere il massimo dalla nuova piattaforma.
Una migrazione tipica ha due fasi, che possono essere simultanee:
- Garantire la compatibilità dell'app (entro la release finale di Android 13)
- Avere come target le nuove funzionalità e API della piattaforma (il prima possibile dopo la release finale)
Garantire la compatibilità con Android 13
È importante testare la funzionalità dell'app esistente su Android 13 per garantire un'esperienza ottimale agli utenti che eseguono l'aggiornamento all' ultima versione di Android. Alcune modifiche della piattaforma possono influire sul modo in cui l'app si comporta, quindi è importante eseguire test precoci e approfonditi e apportare le modifiche necessarie all'app.
In genere, puoi modificare l'app e pubblicare un aggiornamento senza dover cambiare
l'app's targetSdkVersion. Allo stesso modo, non dovresti aver bisogno di utilizzare nuove API o
modificare compileSdkVersion dell'app, anche se questo può dipendere dal modo in cui la tua
app è stata creata e dalla funzionalità della piattaforma che utilizza.
Prima di iniziare i test, assicurati di acquisire familiarità con le modifiche
al comportamento per tutte le app. Queste modifiche potrebbero influire sulla tua app, anche se non
modifici targetSdkVersion.
Installa un'immagine di sistema Android 13 sul tuo dispositivo o scarica un'immagine di sistema per l'emulatore Android.
Esamina le modifiche al comportamento del sistema per identificare le aree in cui la tua app potrebbe essere interessata.
Installa l'app sul dispositivo o sull'emulatore ed esegui i test. Concentrati sulle modifiche al comportamento del sistema e completa tutti i flussi dell'app.
Apporta solo le modifiche al codice necessarie per adattarti alle modifiche al comportamento o risolvere i problemi. Ricompila con lo stesso livello API che l'app aveva originariamente come target. Non è necessario scegliere come target Android 13.
Firma, carica e pubblica l'Android App Bundle o l'APK aggiornato.
Esegui test di compatibilità
Nella maggior parte dei casi, il test di compatibilità con Android 13 è simile al normale test delle app. Questo è un buon momento per esaminare le norme sulla qualità principali delle app e le best practice per i test.
Per eseguire il test, installa l'app pubblicata corrente su un dispositivo con Android 13 e completa tutti i flussi e le funzionalità cercando eventuali problemi. Per aiutarti a concentrare i test, esamina le modifiche al comportamento per tutte le app introdotte in Android 13 che possono influire sul funzionamento dell'app o causarne l' arresto anomalo.
Assicurati inoltre di esaminare e testare gli utilizzi di interfacce non SDK con limitazioni. Dovresti sostituire qualsiasi interfaccia con limitazioni utilizzata dall'app con
un SDK pubblico o un equivalente NDK. Cerca gli avvisi logcat che evidenziano questi
accessi e utilizza il StrictMode metodo detectNonSdkApiUsage() per rilevarli
in modo programmatico.
Infine, assicurati di testare completamente le librerie e gli SDK nella tua app per assicurarti che funzionino come previsto su Android 13 e seguano le best practice per privacy, prestazioni, UX, gestione dei dati e autorizzazioni. Se riscontri un problema, prova ad aggiornare all'ultima versione dell'SDK o contatta lo sviluppatore dell'SDK per ricevere assistenza.
Una volta terminati i test e apportati gli aggiornamenti, ti consigliamo di pubblicare subito l'app compatibile. In questo modo, gli utenti possono testare l'app in anticipo e contribuire a garantire una transizione senza problemi quando eseguono l'aggiornamento ad Android 13.
Aggiorna il targeting e la build dell'app con le nuove API
Dopo aver pubblicato una versione compatibile dell'app, il passaggio successivo consiste nell'aggiungere
il supporto completo per Android 13 aggiornando targetSdkVersion
e sfruttando le nuove API e funzionalità di Android 13.
Puoi apportare questi aggiornamenti non appena sei pronto, tenendo presente i requisiti di Google
Play per il targeting della nuova piattaforma.
Quando pianifichi il lavoro per supportare completamente Android 13, esamina le modifiche al comportamento che interessano le app che hanno come target Android 13. Queste modifiche al comportamento mirate potrebbero causare problemi funzionali che dovrai risolvere. In alcuni casi, queste modifiche richiedono uno sviluppo significativo, quindi ti consigliamo di conoscerle e risolverle il prima possibile. Per identificare le modifiche al comportamento specifiche che interessano la tua app, utilizza gli indicatori di compatibilità per testare l'app con le modifiche selezionate attivate.
I passaggi seguenti descrivono come supportare completamente Android 13.
Installa l'ultima versione di Android Studio Preview per creare la build
con Android 13. Assicurati di avere un dispositivo o
un emulatore Android 13.
Aggiorna targetSdkVersion e altre configurazioni di build.
Esamina le modifiche al comportamento che si applicano alle app che hanno come target Android 13. Identifica le aree in cui la tua app potrebbe essere interessata, e pianifica come supportarle.
Apporta le modifiche al codice e all'architettura necessarie per supportare le modifiche alla privacy degli utenti di Android 13.
Sfrutta le API di Android 13 per aggiungere nuove funzionalità e capacità alle tue app. Ricompila per Android 13.
Esegui il test su un dispositivo o un emulatore Android 13. Concentrati sulle aree dove le modifiche al comportamento potrebbero influire sulla tua app. Prova le funzionalità che utilizzano le nuove API. Fornisci feedback sulla piattaforma e sulle API feedback. Segnala eventuali problemi relativi alla piattaforma, alle API o agli SDK di terze parti.
Una volta che le API di Android 13 sono definitive, aggiorna di nuovo
targetSdkVersion e altre configurazioni di build
, apporta eventuali aggiornamenti aggiuntivi e testa l'app.
Firma, carica e pubblica l'Android App Bundle o l'APK aggiornato.
Scarica l'SDK, modifica il targeting, crea la build con le nuove API
Per iniziare a testare il supporto completo di Android 13, utilizza l'ultima
versione di anteprima di Android Studio per scaricare l'SDK Android 13
e tutti gli altri strumenti di cui hai bisogno. Poi, aggiorna targetSdkVersion e
compileSdkVersion dell'app e ricompila l'app. Per
dettagli, consulta la guida alla configurazione dell'SDK.
Testa l'app Android 13
Dopo aver compilato l'app e averla installata su un dispositivo con Android 13, inizia a testarla per assicurarti che funzioni correttamente quando ha come target Android 13. Alcune modifiche al comportamento si applicano solo quando l'app ha come target la nuova piattaforma, quindi ti consigliamo di esaminare quelle modifiche prima di iniziare.
Come per i test di compatibilità di base, completa tutti i flussi e le funzionalità cercando eventuali problemi. Concentra i test sulle modifiche al comportamento per le app che hanno come target Android 13. È anche un buon momento per verificare la tua app rispetto alle norme sulla qualità principali delle app e alle best practice per i test.
Assicurati di esaminare e testare gli utilizzi di interfacce non SDK con limitazioni
che potrebbero essere applicabili. Cerca gli avvisi logcat che evidenziano questi accessi e utilizza
il metodo StrictMode detectNonSdkApiUsage() per rilevarli
in modo programmatico.
Infine, assicurati di testare completamente le librerie e gli SDK nella tua app per assicurarti che funzionino come previsto su Android 13 e seguano le best practice per privacy, prestazioni, UX, gestione dei dati e autorizzazioni. Se riscontri un problema, prova ad aggiornare all'ultima versione dell'SDK o contatta lo sviluppatore dell'SDK per ricevere assistenza.
Esegui il test utilizzando gli indicatori di compatibilità delle app
Android 13 include indicatori di compatibilità che semplificano il test dell'app con modifiche al comportamento mirate. Per un'app di cui è possibile eseguire il debug, gli indicatori ti consentono di:
- Testare le modifiche mirate senza modificare effettivamente targetSdkVersion dell'app. Puoi utilizzare gli indicatori per forzare l'attivazione di modifiche al comportamento mirate specifiche per valutare l'impatto sull'app esistente.
- Concentrare i test solo su modifiche specifiche. Anziché dover risolvere tutte le modifiche mirate contemporaneamente, gli indicatori ti consentono di disattivare tutte le modifiche mirate tranne quelle che vuoi testare.
- Gestire gli indicatori tramite adb. Puoi utilizzare i comandi adb per attivare e disattivare le modifiche attivabili nell'ambiente di test automatico.
- Eseguire il debug più rapidamente utilizzando gli ID di modifica standard. Le modifiche attivabili hanno ciascuna un ID e un nome univoci che puoi utilizzare per eseguire rapidamente il debug della causa principale nell'output del log.
Gli indicatori possono essere utili quando ti prepari a modificare il targeting dell'app o durante lo sviluppo attivo per il supporto di Android 13. Per ulteriori informazioni, consulta Modifiche al framework di compatibilità (Android 13).