Abandons

À chaque version, certaines API Android peuvent devenir obsolètes ou nécessiter une refactorisation pour offrir une meilleure expérience aux développeurs ou prendre en charge de nouvelles fonctionnalités de la plate-forme. Dans ce cas, Android abandonnera officiellement les API obsolètes et invitera les développeurs à utiliser de nouvelles API à la place.

L'abandon signifie que nous avons mis fin à l'assistance officielle pour les API, mais qu'elles resteront disponibles pour les développeurs. Cette page présente certaines des fonctionnalités obsolètes dans cette version d'Android. Pour voir les autres abandons, consultez le rapport de différences de l'API.

RenderScript

Les API RenderScript sont obsolètes à partir d'Android 12. Elles continueront de fonctionner, mais les fabricants d'appareils et de composants devraient cesser de proposer la prise en charge de l'accélération matérielle. Pour profiter pleinement de l'accélération du GPU, nous vous recommandons d'abandonner RenderScript.

Playlists Android

Les playlists Android sont obsolètes. L'API n'est plus gérée, mais la fonctionnalité actuelle reste disponible pour des raisons de compatibilité.

Nous vous recommandons de lire et d'enregistrer les playlists au format m3u.

Afficher les abandons d'API

Les appareils Android sont disponibles dans de nombreux facteurs de forme, tels que les grands écrans, les tablettes et les pliables. Pour afficher correctement le contenu sur chaque appareil, votre application doit déterminer la taille de l'écran ou de l'affichage. Au fil du temps, Android a fourni différentes API pour récupérer ces informations. Dans Android 11, nous avons introduit l'API WindowMetrics et abandonné les méthodes suivantes :

Dans Android 12, nous continuons de recommander l'utilisation de WindowMetrics et nous abandonnons les méthodes suivantes :

Les applications doivent utiliser les API WindowMetrics pour interroger les limites de leur fenêtre, ou Configuration.densityDpi pour interroger la densité actuelle.

Notez que la bibliothèque Jetpack WindowManager inclut une classe WindowMetrics compatible avec Android 4.0.1 (niveau d'API 14) ou version ultérieure.

Exemples

Voici quelques exemples d'utilisation de WindowMetrics.

Tout d'abord, assurez-vous que votre application peut rendre ses activités entièrement redimensionnables.

Une activité doit s'appuyer sur WindowMetrics à partir d'un contexte d'activité pour tout travail lié à l'interface utilisateur, en particulier WindowManager.getCurrentWindowMetrics().

Si votre application crée un MediaProjection, les limites doivent être correctement dimensionnées, car la projection capture l'affichage. Si l'application est entièrement redimensionnable, le contexte d'activité renvoie les limites correctes.

Kotlin

val projectionMetrics = activityContext
        .getSystemService(WindowManager::class.java).maximumWindowMetrics

Java

WindowMetrics projectionMetrics = activityContext
        .getSystemService(WindowManager.class).getMaximumWindowMetrics();

Si l'application n'est pas entièrement redimensionnable, elle doit interroger les limites à partir d'une instance WindowContext et récupérer les WindowMetrics de la zone d'affichage maximale disponible pour l'application à l'aide de 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();