Mit jeder Version können bestimmte Android APIs veraltet werden oder müssen umgestaltet werden, um Entwicklern mehr Möglichkeiten zu bieten oder neue Plattformfunktionen zu unterstützen. In diesen Fällen werden die veralteten APIs von Android offiziell eingestellt und Entwickler werden auf neue APIs verwiesen, die stattdessen verwendet werden können.
Dies bedeutet, dass wir den offiziellen Support für die APIs eingestellt haben. Sie sind jedoch weiterhin für Entwickler verfügbar. Auf dieser Seite werden einige der in dieser Android-Version verworfenen Funktionen beschrieben. Weitere eingestellte Funktionen finden Sie im API-Diff-Bericht.
RenderScript
Ab Android 12 werden die RenderScript APIs eingestellt. Sie funktionieren weiterhin, aber wir gehen davon aus, dass Geräte- und Komponentenhersteller die Unterstützung der Hardwarebeschleunigung im Laufe der Zeit einstellen werden. Wir empfehlen Ihnen, eine Migration weg von RenderScript durchzuführen, um die GPU-Beschleunigung optimal zu nutzen.
Android-Playlists
Android-Playlists wurden eingestellt. Die API wird nicht mehr gepflegt, die aktuellen Funktionen bleiben aber aus Gründen der Abwärtskompatibilität erhalten.
Wir empfehlen, Playlists als m3u-Dateien zu lesen und zu speichern.
Einstellungen der Display API
Android-Geräte sind in vielen verschiedenen Formfaktoren erhältlich, z. B. große Bildschirme, Tablets und faltbare Geräte. Damit Inhalte für jedes Gerät richtig gerendert werden können, muss Ihre App die Bildschirm- oder Displaygröße ermitteln. Im Laufe der Zeit hat Android verschiedene APIs zum Abrufen dieser Informationen bereitgestellt. Mit Android 11 haben wir die WindowMetrics
API eingeführt und die folgenden Methoden eingestellt:
Unter Android 12 empfehlen wir weiterhin die Verwendung von WindowMetrics
und stellen die folgenden Methoden ein:
Anwendungen sollten die WindowMetrics
APIs verwenden, um die Grenzen ihres Fensters abzufragen, oder Configuration.densityDpi
, um die aktuelle Dichte abzufragen.
Die Jetpack-Bibliothek WindowManager
enthält eine WindowMetrics
-Klasse, die Android 4.0.1 (API-Level 14) und höher unterstützt.
Beispiele
Hier sind einige Beispiele für die Verwendung von WindowMetrics
.
Achten Sie zuerst darauf, dass die Aktivitäten in Ihrer App vollständig skalierbar sind.
Eine Aktivität sollte für alle UI-bezogenen Arbeiten, insbesondere WindowManager.getCurrentWindowMetrics()
, auf WindowMetrics
aus einem Aktivitätskontext zurückgreifen.
Wenn Ihre App eine MediaProjection
erstellt, müssen die Begrenzungen die richtige Größe haben, da die Projektion das Display erfasst. Wenn die App vollständig skalierbar ist, gibt der Aktivitätskontext die richtigen Ränder zurück.
Kotlin
val projectionMetrics = activityContext .getSystemService(WindowManager::class.java).maximumWindowMetrics
Java
WindowMetrics projectionMetrics = activityContext .getSystemService(WindowManager.class).getMaximumWindowMetrics();
Wenn die App nicht vollständig skalierbar ist, muss sie die Begrenzungen von einer WindowContext
-Instanz abfragen und die WindowMetrics des maximalen Anzeigebereichs abrufen, der der Anwendung mit WindowManager.getMaximumWindowMetrics()
zur Verfügung steht.
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();