Con ogni release, API Android specifiche potrebbero diventare obsolete o dover essere ristrutturate per offrire un'esperienza migliore per gli sviluppatori o supportare nuove funzionalità della piattaforma. In questi casi, Android ritirerà ufficialmente le API obsolete e indirizzerà gli sviluppatori alle nuove API da utilizzare.
Con ritiro si intende che abbiamo interrotto il supporto ufficiale delle API, che tuttavia continueranno a essere disponibili per gli sviluppatori. Questa pagina mette in evidenza alcune delle ritirazioni in questa release di Android. Per visualizzare altre ritiri, consulta il report sulle differenze dell'API.
RenderScript
A partire da Android 12, le API RenderScript sono ritirate. Continueranno a funzionare, ma prevediamo che i produttori di dispositivi e componenti interromperanno gradualmente il supporto dell'accelerazione hardware. Per sfruttare al meglio l'accelerazione GPU, ti consigliamo di eseguire la migrazione da RenderScript.
Playlist di Android
Le playlist di Android sono ritirate. L'API non è più gestita, ma la funzionalità attuale rimane per motivi di compatibilità.
Ti consigliamo di leggere e salvare le playlist come file m3u.
Ritiro dell'API Display
I dispositivi Android sono disponibili in molti fattori di forma diversi, ad esempio con schermi di grandi dimensioni, tablet e pieghevoli. Per visualizzare correttamente i contenuti per ogni dispositivo, l'app deve determinare le dimensioni dello schermo o del display. Nel corso del tempo, Android ha fornito API diverse per il recupero di queste informazioni. In Android 11 abbiamo introdotto l'API WindowMetrics
e ritirato questi metodi:
In Android 12 continuiamo a consigliare l'utilizzo di WindowMetrics
e stiamo ritirando questi metodi:
Le app devono utilizzare le API WindowMetrics
per eseguire query sui limiti della finestra o
Configuration.densityDpi
per eseguire query sulla densità corrente.
Tieni presente che la libreria Jetpack WindowManager
include una classe WindowMetrics
che supporta Android 4.0.1 (livello API 14) e versioni successive.
Esempi
Ecco alcuni esempi di utilizzo di WindowMetrics
.
Innanzitutto, assicurati che la tua app possa rendere le sue attività completamente ridimensionabili.
Un'attività deve basarsi su WindowMetrics
da un contesto dell'attività per qualsiasi attività correlata all'interfaccia utente, in particolare WindowManager.getCurrentWindowMetrics()
.
Se la tua app crea un MediaProjection
, i limiti devono avere le dimensioni corrette poiché la proiezione acquisisce il display. Se l'app è completamente ridimensionabile, il
contesto dell'attività restituisce i limiti corretti.
Kotlin
val projectionMetrics = activityContext .getSystemService(WindowManager::class.java).maximumWindowMetrics
Java
WindowMetrics projectionMetrics = activityContext .getSystemService(WindowManager.class).getMaximumWindowMetrics();
Se l'app non è completamente ridimensionabile, deve eseguire una query sui limiti da un'istanza WindowContext
e recuperare WindowMetrics dell'area di visualizzazione massima disponibile per l'applicazione utilizzando WindowManager.getMaximumWindowMetrics()
Kotlin
val windowContext = context.createWindowContext(mContext.display!!, WindowManager.LayoutParams.TYPE_APPLICATION, null) val projectionMetrics = windowContext.getSystemService(WindowManager::class.java) .maximumWindowMetrics
Java
Context windowContext = mContext.createWindowContext(mContext.getDisplay(), WindowManager.LayoutParams.TYPE_APPLICATION, null; WindowMetrics projectionMetrics = windowContext.getWindowManager() .getMaximumWindowMetrics();