A ogni release, API Android specifiche potrebbero diventare obsolete o dover essere sottoposte a refactoring per offrire una migliore esperienza agli sviluppatori o supportare nuove funzionalità della piattaforma. In questi casi, Android ritirerà ufficialmente le API obsolete e indirizzerà gli sviluppatori a 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 evidenzia alcuni dei ritiro di questa release di Android. Per visualizzare altri ritiri, consulta il report Differenze API.
RenderScript
A partire da Android 12, le API RenderScript sono deprecate. Continueranno a funzionare, ma prevediamo che i produttori di dispositivi e componenti smetteranno di fornire supporto per l'accelerazione hardware nel corso del tempo. Per sfruttare appieno l'accelerazione GPU, ti consigliamo di eseguire la migrazione da RenderScript.
Playlist Android
Le playlist di Android sono deprecate. L'API non è più gestita, ma la funzionalità attuale rimane per motivi di compatibilità.
Consigliamo di leggere e salvare le playlist come file m3u.
Ritiro dell'API Display
I dispositivi Android stanno diventando disponibili in molti fattori di forma diversi, come
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 abbiamo ritirato i seguenti metodi:
In Android 12 continuiamo a consigliare l'utilizzo di WindowMetrics
e stiamo ritirando questi metodi:
Le app devono usare le API WindowMetrics
per eseguire query sui limiti della finestra o
Configuration.densityDpi
per eseguire query sulla densità attuale.
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 di attività per qualsiasi lavoro relativo all'interfaccia utente, in particolare WindowManager.getCurrentWindowMetrics()
.
Se l'app crea un elemento MediaProjection
, i limiti devono essere dimensionati correttamente
perché 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 di 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();