Croce e delizia degli sviluppatori: ecco due novità in arrivo con Android 11

Matteo Bottin

L’arrivo di una nuova versione di Android significa l’introduzione di tante novità nelle API e tanto lavoro per gli sviluppatori per rendere le app compatibili con il nuovo sistema operativo. Con Android 11 verranno introdotte (almeno) due novità, una piacevole ed una un po’ meno.

Nuovo strumento di controllo compatibilità

Partiamo con le belle notizie: con Android 11 Google permetterà agli sviluppatori di testare le proprie app grazie all’impostazione “App Compatibility” all’interno delle Opzioni Sviluppatore.

Questo progetto, chiamato PlatformCompat, permette agli sviluppatori di non dover utilizzare ADB per simulare nuove condizioni di lavoro (qui un esempio), ma permetterà di impostarle direttamente dal menù delle Opzioni Sviluppatore. Qui troveremo sezioni diverse per ogni livello API, ognuna con le proprie impostazioni dedicate. In galleria potete vedere un esempio di schermata.

Restrizione delle API e rimozione del bypass meta-reflection

La brutta notizia riguarda le “hidden API”, ovvero quelle API che, seppur incluse all’interno del framework di Android, non hanno alcuna documentazione all’interno del relativo SDK. Sebbene da Android 9 Pie fosse stato virtualmente impedito l’accesso a queste API, con Android 11 il controllo si farà ancora più serrato.

Sì, perché ad oggi è possibile accedere alle API nascoste tramite il workaround meta reflection (qui una spiegazione esaustiva), ma questa scappatoia con Android 11 non funzionerà più. Google ha infatti aggiunto qualche riga di codice in un commit dell’AOSP che esegue qualche controllo aggiuntivo.

Ovviamente il cambiamento non colpisce tutte le applicazioni: sarà attivo solo per le app che puntano al livello API 30 (Android 11), mentre quelle che puntano al livello API 29 o inferiore saranno “salve”. Certo, si tratta solamente di un palliativo, perché prima o poi le API 30 saranno un requisito fondamentale per la pubblicazione delle app nel Play Store.

Via: XDA Developers (1), XDA Developers (2)