Deprecazioni

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();