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.

Il ritiro indica che abbiamo terminato il supporto ufficiale per le API, che 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 Android sono deprecate. L'API non viene più gestita, ma rimane la funzionalità attuale per garantire la compatibilità.

Consigliamo di leggere e salvare le playlist come file m3u.

Ritiri dell'API Display

I dispositivi Android stanno diventando disponibili in molti fattori di forma diversi, come schermi di grandi dimensioni, tablet e pieghevoli. Per poter visualizzare i contenuti in modo appropriato per ogni dispositivo, l'app deve determinare le dimensioni dello schermo o del display. Nel tempo Android ha fornito API diverse per recuperare 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 i seguenti 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 query sui limiti di un'istanza WindowContext e recuperare le 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();