Änderungen am Kompatibilitäts-Framework (Android 15)

Abbildung 1: Auf dem Bildschirm „Änderungen bei der App-Kompatibilität“ in den Entwickleroptionen sind die Änderungen aufgeführt, die Sie aktivieren können.

Auf dieser Seite werden umschaltbare Änderungen beschrieben, die Teil des Kompatibilitätsframeworks in Android 15 (API-Level 35) sind. Verwende diese Liste zusammen mit den Entwickleroptionen und ADB-Befehlen, um deine App zu testen und zu debuggen, während du die Unterstützung für Android 15 vorbereitest.

Mit den Tools des Compatibility Framework können Sie unter anderem Folgendes tun:

  • Zielgerichtete Änderungen testen, ohne die targetSdkVersion der App zu ändern Mit den Ein-/Aus-Schaltflächen können Sie bestimmte Änderungen am Verhalten erzwingen, um die Auswirkungen auf Ihre vorhandene App zu bewerten.
  • Konzentrieren Sie sich bei Ihren Tests nur auf bestimmte Änderungen. Anstatt alle gezielten Änderungen auf einmal zu bearbeiten, können Sie mit den Ein-/Aus-Schaltflächen alle ausgerichteten Änderungen deaktivieren, mit Ausnahme derer, die Sie testen möchten.
  • Schalter über adb verwalten Mithilfe von adb-Befehlen können Sie die umschaltbaren Änderungen in Ihrer automatisierten Testumgebung aktivieren und deaktivieren.
  • Mithilfe von Standard-Änderungs-IDs schneller Fehler beheben Ein-/Aus-Änderungen haben jeweils eine eindeutige ID und einen Namen, mit denen Sie die Ursache schnell in der Protokollausgabe beheben können.

Ausführliche Informationen zur Verwendung der Tools für die einzelnen Anwendungsfälle finden Sie unter Tools für das Compatibility Framework.

Verhaltensänderungen im Kompatibilitäts-Framework

In der Liste in diesem Abschnitt werden die umschaltenden Änderungen beschrieben, die im Kompatibilitäts-Framework für Änderungen in Bezug auf Android 15 enthalten sind, sowie die ein-/ausschaltbaren Änderungen, die für allgemeine App-Tests hilfreich sind.

Sie können die Liste der Änderungen nach dem Standardstatus filtern.

Aktivierbare Änderungen im Kompatibilitäts-Framework in Android 15

CAMERA_MIC_INDICATORS_NOT_PRESENT

Change-ID:162547999
Standardstatus: Für alle Apps deaktiviert.

Gibt an, dass dieses Gerät Kamera- und Mikrofonsymbole unterstützt. Der Wert ist false, falls vorhanden, da die Methode CompatChanges#isChangeEnabled true zurückgibt, wenn die Änderungs-ID nicht vorhanden ist.

CHECK_PARAMS_IN_IS_SESSION_CONFIGURATION_SUPPORTED

Change ID:320741775
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, wird bei isSessionConfigurationSupported auch die Kompatibilität der Sitzungsparameter geprüft, sofern diese von der HAL unterstützt werden.

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_CREATOR

Änderungs-ID:296478951
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, blockiert der Ersteller einer PendingIntent standardmäßig den Start von Hintergrundaktivitäten.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt Einstieg in gesicherte Hintergrundaktivitäten.

DEPRECATE_UI_FONT

Änderungs-ID:279646685
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, wird das Attribut elegantTextHeight TextView standardmäßig in true geändert, wenn Ihre App auf einem Gerät mit Android 15 oder höher ausgeführt wird. Dabei wird die standardmäßig verwendete kompakte Schrift durch eine Schrift mit großen vertikalen Maßen ersetzt, die viel besser lesbar ist.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt Das Attribut „elegantTextHeight“ hat standardmäßig den Wert „wahr“.

DOWNSCALED

Change-ID:168419799
Standardstatus: Für alle Apps deaktiviert.

Diese Änderung ist der Gatekeeper für alle App-internen Änderungen zum Herunterskalieren des Zwischenspeichers. Wenn Sie diese Änderung aktivieren, können die folgenden Skalierungsfaktoren angewendet werden:

Wenn diese Änderung für ein App-Paket aktiviert ist, wird die App gezwungenermaßen auf den höchsten aktivierten Skalierungsfaktor verkleinert. Beispiel: Wenn sowohl 80% als auch 70 % (DOWNSCALE_80 und DOWNSCALE_70) aktiviert sind, wird 80 % verwendet. Wenn sowohl diese Änderung als auch DOWNSCALED_INVERSE aktiviert sind, hat DOWNSCALED_INVERSE Vorrang und der Skalierungsfaktor wird umgekehrt angewendet.

DOWNSCALED_INVERSE

Change-ID:273564678
Standardstatus: Deaktiviert für alle Apps.

Diese Änderung ist der Gatekeeper für alle inversen Herunterskalierungsänderungen pro App-Zwischenspeicher. Wenn Sie diese Änderung aktivieren, können die folgenden Skalierungsfaktoren umgekehrt angewendet werden, d. h., die Auflösung wird stattdessen hochskaliert:

Wenn diese Änderung für ein Anwendungspaket aktiviert ist, wird die Größe der Anwendung zwangsweise auf den niedrigsten aktivierten Skalierungsfaktor angepasst. Beispielsweise wird 80% verwendet, wenn sowohl 80% als auch 70 % (DOWNSCALE_80 und DOWNSCALE_70) aktiviert sind, da bei umgekehrter Anwendung ein Skalierungsfaktor von 80% gleich 125 % ist, was kleiner als die Skalierung von 142,86% ist, die angewendet wird, wenn ein Skalierungsfaktor von 70% umgekehrt angewendet wird. Wenn sowohl diese Änderung als auch DOWNSCALED aktiviert sind, hat DOWNSCALED_INVERSE Vorrang und der Skalierungsfaktor wird umgekehrt angewendet.

DOWNSCALE_30

Änderungs-ID:189970040
Standardstatus: Für alle Apps deaktiviert.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 30% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 333,33% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_35

Änderungs-ID:189969749
Standardstatus: Für alle Apps deaktiviert.

Wenn DOWNSCALED ebenfalls aktiviert ist und diese Änderung für ein Paket aktiviert ist, wird die App davon ausgegangen, dass sie auf einem Display mit 35% der vertikalen und horizontalen Auflösung des tatsächlichen Bildschirms ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird durch das Aktivieren dieser Änderung für ein Paket die App dazu gezwungen, sie auf einem Display mit 285,71% der vertikalen und horizontalen Auflösung des tatsächlichen Bildschirms auszuführen.

DOWNSCALE_40

Change-ID:189970038
Standardstatus: Deaktiviert für alle Apps.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 40% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 250% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_45

Change-ID:189969782
Standardstatus: Für alle Apps deaktiviert.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 45% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist und diese Änderung für ein Paket aktiviert ist, wird die App davon ausgegangen, dass sie auf einem Bildschirm ausgeführt wird, der 222,22% der vertikalen und horizontalen Auflösung des tatsächlichen Bildschirms entspricht.

DOWNSCALE_50

Change-ID:176926741
Standardstatus: Für alle Apps deaktiviert.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 50% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 200% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_55

Change-ID:189970036
Standardstatus: Deaktiviert für alle Apps.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 55% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 181,82% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_60

Änderungs-ID:176926771
Standardstatus: Für alle Apps deaktiviert.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 60% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 166,67% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_65

Änderungs-ID:189969744
Standardstatus: Für alle Apps deaktiviert.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 65% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 153,85% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_70

Änderungs-ID:176926829
Standardstatus: Deaktiviert für alle Apps.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 70% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 142,86% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_75

Änderungs-ID:189969779
Standardstatus: Deaktiviert für alle Apps.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 75% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 133,33% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_80

Änderungs-ID:176926753
Standardstatus: Für alle Apps deaktiviert.

Wenn DOWNSCALED ebenfalls aktiviert ist und diese Änderung für ein Paket aktiviert ist, wird die App davon ausgegangen, dass sie auf einem Display mit 80% der vertikalen und horizontalen Auflösung des tatsächlichen Bildschirms ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird durch das Aktivieren dieser Änderung für ein Paket die App davon ausgegangen, dass sie auf einem Display mit 125% der vertikalen und horizontalen Auflösung des tatsächlichen Bildschirms ausgeführt wird.

DOWNSCALE_85

Änderungs-ID:189969734
Standardstatus: Deaktiviert für alle Apps.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 85% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 117,65% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_90

Change-ID:182811243
Standardstatus: Deaktiviert für alle Apps.

Wenn auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 90% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 111,11% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DO_NOT_CLONE_IN_ARRAYS_AS_LIST

Änderungs-ID:202956589
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist und Arrays.asList(...).toArray() verwendet wird, ist der Komponententyp des resultierenden Arrays jetzt Object und nicht der Typ der Elemente des zugrunde liegenden Arrays. Der folgende Code führt daher zu einem ClassCastException-Fehler:

String[] elements = (String[]) Arrays.asList("one", "two").toArray();

Wenn Sie in diesem Fall String als Komponententyp im resultierenden Array beibehalten möchten, können Sie stattdessen Collection.toArray(Object[]) verwenden:

String[] elements = Arrays.asList("two", "one").toArray(new String[0]);

Weitere Informationen zu dieser Änderung finden Sie im Abschnitt zu Änderungen an der OpenJDK API auf der Seite zu Verhaltensänderungen unter Android 15.

ENABLE_BUNDLE_LAUNCH_ACTIVITY_ITEM

Änderungs-ID:324203798
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, können bei vorhandenen Apps keine Probleme mit der App-Kompatibilität auftreten, wenn ClientTransaction#getActivityToken() nicht als SDK verwendet wird. In diesem Fall ist nur das Binden von LaunchActivityItem zulässig.

ENABLE_MATCH_LOCAL_NETWORK

Änderungs-ID:319212206
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, empfangen Apps standardmäßig Netzwerk-Callbacks von lokalen Netzwerken. Bei Apps, die auf Android 14 (API-Level 34) oder niedriger ausgerichtet sind, muss der NetworkCapabilities der NetworkRequest weiterhin NetworkCapabilities.NET_CAPABILITY_LOCAL_NETWORK hinzugefügt werden, um ConnectivityManager.NetworkCallback von lokalen Netzwerken zu empfangen.

ENABLE_STRICT_FORMATTER_VALIDATION

Änderungs-ID:270674727
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, ist die Validierung von Argumentindex, Flags, Breite und Genauigkeit bei der Verwendung der String.format()- und Formatter.format()-APIs jetzt strenger.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt zu Änderungen an der OpenJDK API.

ENFORCE_EDGE_TO_EDGE

Änderungs-ID:309578419
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, sind Apps auf Geräten mit Android 15 oder höher standardmäßig Edge-to-Edge-Apps.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt Erzwungene Vollbildanzeige.

ENFORCE_STRICT_QUERY_BUILDER

Change-ID:143231523
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Option aktiviert ist, werden alle CalendarProvider2-Abfrageauswahlen auf schädliche Argumente geprüft.SQLiteQueryBuilder

FGS_BOOT_COMPLETED_RESTRICTIONS

Change ID:296558535
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, wird das Starten von Diensten im Vordergrund aus dem Hintergrund durch BOOT_COMPLETED-Broadcasts für alle Typen deaktiviert, mit folgenden Ausnahmen:

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen bei Android 15 im Abschnitt Einschränkungen für BOOT_COMPLETED-Broadcastempfänger, die Dienste im Vordergrund starten.

FGS_INTRODUCE_TIME_LIMITS

Änderungs-ID:317799821
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Funktion aktiviert ist, haben Dienste im Vordergrund bestimmter Typen ein Zeitlimit. Wenn der Dienst im Vordergrund des betreffenden Typs nicht innerhalb des zugewiesenen Zeitlimits beendet wird, erhält er einen Callback über Service.onTimeout(int, int) und muss dann innerhalb weniger Sekunden beendet werden. Wenn eine App dies nicht tut, wird sie als ANR deklariert.

Weitere Informationen zu dieser Änderung finden Sie in den Abschnitten auf der Seite „15 Verhaltensänderungen bei Android“ zum Zeitüberschreitungsverhalten bei den Diensttypen Datensynchronisierung und Medienverarbeitung im Vordergrund.

FGS_SAW_RESTRICTIONS

Änderungs-ID:319471980
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, wird der Start von Diensten im Vordergrund im Systemwarnfenster für alle Typen deaktiviert, es sei denn, es gibt bereits ein System-Overlay-Fenster.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt Einschränkungen beim Starten von Diensten im Vordergrund, während eine App die Berechtigung SYSTEM_ALERT_WINDOW hat.

FORCE_DISABLE_HEVC_SUPPORT

Change-ID:174227820
Standardstatus: Für alle Apps deaktiviert.

Sie können die Unterstützung der HEVC-Medienfunktion für eine App erzwingen. Apps sollten ihre unterstützten Medienfunktionen in ihrem Manifest deklarieren. Mit diesem Flag kann jedoch erzwungen werden, dass eine App HEVC nicht unterstützt, was eine Transcodierung beim Zugriff auf in HEVC codierte Medien erzwingt. Wenn Sie dieses Flag setzen, werden alle Standardeinstellungen auf Betriebssystemebene für Apps überschrieben. Sie ist standardmäßig deaktiviert, d. h., die Standardeinstellungen des Betriebssystems haben Vorrang. Wenn sowohl dieses Flag als auch FORCE_ENABLE_HEVC_SUPPORT aktiviert sind, ignoriert das Betriebssystem beide Flags.

FORCE_ENABLE_HEVC_SUPPORT

Change-ID:174228127
Standardstatus: Deaktiviert für alle Apps.

Erzwingen, dass eine App die HEVC-Medienfunktion unterstützt. Apps sollten die unterstützten Medienfunktionen in ihrem Manifest deklarieren. Dieses Flag kann jedoch verwendet werden, um eine App zur Unterstützung von HEVC zu zwingen. Dadurch wird die Transcodierung beim Zugriff auf in HEVC codierte Medien vermieden. Wenn Sie dieses Flag setzen, werden alle Standardeinstellungen für Apps auf Betriebssystemebene überschrieben. Sie ist standardmäßig deaktiviert, sodass die Standardeinstellungen des Betriebssystems Vorrang haben. Wenn sowohl dieses Flag als auch FORCE_DISABLE_HEVC_SUPPORT aktiviert sind, werden beide vom Betriebssystem ignoriert.

FORCE_NON_RESIZE_APP

Change-ID:181146395
Standardstatus: Für alle Apps deaktiviert.

Erzwingt, dass die Größe der Pakete, auf die es angewendet wird, nicht geändert werden kann.

FORCE_RESIZE_APP

Change-ID:174042936
Standardstatus: Deaktiviert für alle Apps.

Erzwingt, dass die Größe der Pakete, auf die er angewendet wird, angepasst werden kann. Wir erlauben nur die Größenänderung im Vollbildmodus, aber nicht die Umstellung der App in den Mehrfenstermodus mit änderbarer Größe.

GWP_ASAN

Änderungs-ID:145634846
Standardstatus: Für alle Apps deaktiviert.

Aktiviert die Fehlererkennung im gestaffelten nativen Arbeitsspeicher in Apps.

Weitere Informationen zur Verwendung von GWP-ASan finden Sie im GWP-ASan-Leitfaden.

IS_DEVICE_OWNER_USER_AWARE

Change ID:307233716
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, verwendet die Methode isDeviceOwnerApp(String) den im Kontext enthaltenen Nutzer. Für Apps, die auf Android 14 (API-Level 34) oder niedriger ausgerichtet sind, wird der Nutzer des aufrufenden Prozesses verwendet (Process.myUserHandle()).

MANAGE_GLOBAL_ZEN_VIA_IMPLICIT_RULES

Change ID:308670109
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Einstellung aktiviert ist, können Apps den globalen Status oder die Richtlinie für „Bitte nicht stören“ (DND) auf einem Gerät nicht mehr ändern, indem sie die Nutzereinstellungen ändern oder den DND-Modus deaktivieren. Stattdessen müssen Apps eine AutomaticZenRule einreichen, die vom System in eine globale Richtlinie mit dem bestehenden Verfahren „Die strengste Richtlinie gilt“ kombiniert wird.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu den Verhaltensänderungen in Android 15 unter Änderungen bei der Möglichkeit von Apps, den globalen Status des Modus „Bitte nicht stören“ zu ändern.

NATIVE_HEAP_ZERO_INIT

Change-ID:178038272
Standardstatus: Deaktiviert für alle Apps.

Aktivieren Sie die automatische Nullinitialisierung von nativen Heap-Speicherzuweisungen.

NATIVE_MEMTAG_ASYNC

Change-ID:145772972
Standardstatus: Für alle Apps deaktiviert.

Aktivieren Sie in diesem Prozess die asynchrone (ASYNC) Speicher-Tag-Prüfung. Dieses Flag betrifft nur Hardware, die die ARM Memory Tagging Extension (MTE) unterstützt.

NATIVE_MEMTAG_SYNC

Änderungs-ID:177438394
Standardstatus: Deaktiviert für alle Apps.

Aktiviert die synchrone Überprüfung von Speicher-Tags (SYNC) in diesem Prozess. Dieses Flag gilt nur für Hardware, die die ARM Memory Tagging Extension (MTE) unterstützt. Wenn sowohl NATIVE_MEMTAG_ASYNC als auch diese Option aktiviert sind, hat diese Option Vorrang und MTE wird im SYNC-Modus aktiviert.

OVERRIDE_ANY_ORIENTATION

Change-ID:265464455
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Änderung aktiviert ist, können die folgenden Ausrichtungsüberschreibungen unabhängig von der von der Aktivität angeforderten Ausrichtung angewendet werden:

OVERRIDE_ANY_ORIENTATION_TO_USER

Change-ID:310816437
Standardstatus: Deaktiviert für alle Apps.

Wenn diese Option aktiviert ist, wird SCREEN_ORIENTATION_USER aktiviert, wodurch die von der Aktivität angeforderte Ausrichtung überschrieben wird. Apps mit fester Ausrichtung können auf Geräten mit großen Bildschirmen im Vollbildmodus überschrieben werden, wenn ignoreOrientationRequest durch diese Überschreibung aktiviert ist.

OVERRIDE_CAMERA_COMPAT_DISABLE_FREEFORM_WINDOWING_TREATMENT

Change-ID:314961188
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Option aktiviert ist, werden die Pakete, auf die die Überschreibung angewendet wird, aus der Kamerakompatibilitätsbehandlung im Modus für kostenlos geformte Fenster für Apps mit fester Ausrichtung ausgeschlossen.

Im Freiform-Fenstermodus emuliert die Kompatibilität die Ausführung auf einem Gerät im Hochformat, indem das App-Fenster mit Letterbox-Balken dargestellt wird und die Kameraeigenschaften so geändert werden, was Apps im Hochformat normalerweise erwarten: Sensordrehung um 90 Grad bzw. 270 Grad für Rück- und Frontkameras und Einstellung der Displaydrehung auf 0.

Mit diesem Flag können Sie die Kompatibilitätsbehandlung für Apps deaktivieren, die nicht gut darauf reagieren.

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

Änderungs-ID:191514214
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Änderung aktiviert ist, wird erzwungen, dass die angewendeten Pakete den aktuellen Wert von android:resizeableActivity sowie das Ziel-SDK, das Android 6.0 oder niedriger als Android 6.0 (API-Level 23) ist, ignorieren und die Aktivität als nicht veränderbar betrachten. In diesem Fall hängt der Wert für die Kameradrehung und -zuschneidung nur von der erforderlichen Kompensation unter Berücksichtigung der aktuellen Displaydrehung ab.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

Change-ID:189229956
Standardstatus: Deaktiviert für alle Apps.

Wenn diese Änderung aktiviert ist, wird bei den betroffenen Paketen das standardmäßige Verhalten der Kameradrehung und -zuschneidung überschrieben und immer CaptureRequest.SCALER_ROTATE_AND_CROP_NONE zurückgegeben.

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

Change-ID:316897322
Standardstatus: Deaktiviert für alle Apps.

Wenn diese Option aktiviert ist, können Nutzer beim Starten einer MediaProjection-Sitzung auswählen, ob sie eine einzelne App oder den gesamten Bildschirm aufnehmen möchten. Dadurch wird die Verwendung von MediaProjectionConfig#createConfigForDefaultDisplay überschrieben.

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

Änderungs-ID:266124927
Standardstatus: Für alle Apps deaktiviert.

Aktiviert SCREEN_ORIENTATION_REVERSE_LANDSCAPE für die Anwendung, auf die es angewendet wird. Sofern OVERRIDE_ANY_ORIENTATION nicht auch aktiviert ist, wird SCREEN_ORIENTATION_REVERSE_LANDSCAPE nur verwendet, wenn für die Aktivität die Querformatausrichtung angegeben ist. Wenn Sie diese Änderung aktivieren, können Sie das App-Verhalten auf Unterschiede zwischen Geräten testen, bei denen die Querformatausrichtung Surface.ROTATION_90 und Geräten entspricht, bei denen sie Surface.ROTATION_270 entspricht.

OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE

Change-ID:332679525
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Option aktiviert ist, wird das Layout im Modus für die Display-Aussparung überschrieben. Dies gilt nur, wenn die Vollansicht nicht erzwungen wird.

OVERRIDE_MIN_ASPECT_RATIO

Change-ID:174042980
Standardstatus: Für alle Apps deaktiviert.

Diese Änderung ist der Gatekeeper für alle Änderungen, die ein bestimmtes Mindestseitenverhältnis erzwingen. Wenn Sie diese Änderung aktivieren, können die folgenden Mindestseitenverhältnisse angewendet werden:

Wenn diese Änderung für ein App-Paket aktiviert ist, wird das im Manifest der App angegebene Mindestseitenverhältnis mit dem größten aktivierten Seitenverhältnis überschrieben, es sei denn, der Manifestwert der App ist höher.

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

Änderungs-ID:218959984
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Option aktiviert ist, wird die Einschränkung des Mindestseitenverhältnisses im Hochformat im Hochformat überschrieben, um den gesamten verfügbaren Platz auf dem Bildschirm zu nutzen.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

Change-ID:180326787
Standardstatus: Für alle Apps deaktiviert.

Wenn auch OVERRIDE_MIN_ASPECT_RATIO aktiviert ist, wird durch diese Änderung für ein Paket das Mindestseitenverhältnis der Aktivität auf einen großen Wert festgelegt, der durch OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE definiert ist.

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

Change-ID:180326845
Standardstatus: Für alle Apps deaktiviert.

Wenn OVERRIDE_MIN_ASPECT_RATIO ebenfalls aktiviert ist und diese Änderung für ein Paket aktiviert wird, wird das Mindestseitenverhältnis der Aktivität auf einen mittleren Wert gesetzt, wie durch OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE definiert.

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

Change-ID:325586858
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Option aktiviert ist, werden Verarbeitungen, die ein bestimmtes Mindestseitenverhältnis erzwingen, so eingeschränkt, dass sie nur angewendet werden, wenn eine App mit der Kamera verbunden ist.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

Change-ID:203647190
Standardstatus: Für alle Apps aktiviert.

Wenn auch OVERRIDE_MIN_ASPECT_RATIO aktiviert ist, werden alle anderen Änderungen, die das Mindestseitenverhältnis einer Aktivität auf einen bestimmten Wert festlegen, auf Aktivitäten mit Hochformat beschränkt, z. B. OVERRIDE_MIN_ASPECT_RATIO_LARGE und OVERRIDE_MIN_ASPECT_RATIO_MEDIUM.

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

Änderungs-ID:236283604
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Änderung aktiviert ist, werden Pakete, auf die sie angewendet wird, von den Einschränkungen für die Ausrichtung ignoriert, die Gerätehersteller festlegen können.

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

Change-ID:265451093
Standardstatus: Deaktiviert für alle Apps.

Aktiviert SCREEN_ORIENTATION_NOSENSOR für die Anwendung, auf die es angewendet wird. Sofern OVERRIDE_ANY_ORIENTATION nicht auch aktiviert ist, wird SCREEN_ORIENTATION_NOSENSOR nur verwendet, wenn für die Aktivität keine andere feste Ausrichtung angegeben ist.

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

Änderungs-ID:265452344
Standardstatus: Für alle Apps deaktiviert.

Aktiviert SCREEN_ORIENTATION_PORTRAIT für die App, auf die es angewendet wird. Sofern OVERRIDE_ANY_ORIENTATION nicht auch aktiviert ist, wird SCREEN_ORIENTATION_PORTRAIT nur verwendet, wenn für die Aktivität keine andere feste Ausrichtung angegeben ist.

PARSE_CONTENT_DISPOSITION_USING_RFC_6266

Änderungs-ID:319400769
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, wird das Parsen von Content-Disposition-Headern ermöglicht, die RFC 6266-konform sind. Dies ermöglicht insbesondere das Parsen von filename*-Werten, für die eine andere Zeichencodierung verwendet werden kann.

RATE_LIMIT_TOASTS

Änderungs-ID:174840628
Standardstatus: Diese Änderung kann nicht deaktiviert werden. Sie wird nur vom Kompatibilitäts-Framework protokolliert.

Hiermit wird die Anzahl der Toast.show()-Aufrufe begrenzt, um zu verhindern, dass der Nutzer innerhalb kurzer Zeit zu viele Benachrichtigungen erhält. Wird versucht, innerhalb eines bestimmten Zeitraums mehr Toasts anzuzeigen als zulässig, wird der Toast verworfen.

STREAM_INT_DIFFERS_FROM_NEXT_INT

Änderungs-ID:308103782
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, geben die Random.ints()-Methoden jetzt eine andere Zahlenfolge als die Random.nextInt()-Methoden zurück. Dies folgt aus den Änderungen in https://bugs.openjdk.org/browse/JDK-8301574.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt zu Änderungen an der OpenJDK API.

USE_EXPERIMENTAL_COMPONENT_ALIAS

Change-ID:196254758
Standardstatus: Für alle Apps deaktiviert.

Wenn diese Option aktiviert ist, kann das Paket „android“ Komponentenaliasse verwenden.

USE_NEW_ISO_LOCALE_CODES

Änderungs-ID:291868760
Standardstatus: Aktiviert für Apps, die auf Android 15 (API-Level 35) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, werden die Sprachcodes für Hebräisch, Jiddisch und Indonesisch nicht mehr in ihre veralteten Formen konvertiert (Hebräisch: iw, Jiddisch: ji und Indonesisch: in).

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt zu Änderungen an der OpenJDK API.