Ä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. Verwenden Sie diese Liste in Verbindung mit den Entwickleroptionen und ADB-Befehlen, um Ihre App zu testen und zu debuggen, während Sie sich auf die Unterstützung und Ausrichtung auf Android 15 vorbereiten.

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 Änderungen auf einmal anpassen zu müssen, können Sie mit den Ein-/Aus-Schaltflächen alle Änderungen deaktivieren, mit Ausnahme derjenigen, 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 in der Protokollausgabe schnell 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 Rahmen des Kompatibilitäts-Frameworks

In der Liste in diesem Abschnitt werden umschaltbare Änderungen beschrieben, die im Kompatibilitäts-Framework für Änderungen im Zusammenhang mit Android 15 enthalten sind, sowie umschaltbare Änderungen, die bei allgemeinen App-Tests hilfreich sein können.

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 sie 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, verhindert 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

Change 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 größeren 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 Änderungen am App-spezifischen Downscaling des Buffers. 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 Änderungen am inversen Downscaling des App-spezifischen Buffers. 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 App-Paket aktiviert ist, wird die App gezwungen, auf den niedrigsten aktivierten Skalierungsfaktor umgestellt zu werden. Beispiel: Wenn sowohl 80% als auch 70 % (DOWNSCALE_80 und DOWNSCALE_70) aktiviert sind, wird 80 % verwendet, da ein Skalierungsfaktor von 80% bei umgekehrter Anwendung 125 % entspricht, was weniger ist als die Skalierung von 142,86 %, die bei umgekehrter Anwendung eines Skalierungsfaktors von 70% angewendet wird. Wenn sowohl diese Änderung als auch DOWNSCALED aktiviert sind, hat DOWNSCALED_INVERSE Vorrang und der Skalierungsfaktor wird umgekehrt angewendet.

DOWNSCALE_30

Change-ID:189970040
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 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: 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 35% 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 285,71% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

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 auch DOWNSCALED_INVERSE aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 222,22% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

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

Change-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: 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 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 auch DOWNSCALED aktiviert ist, wird die App durch diese Änderung für ein Paket gezwungen anzunehmen, dass sie auf einem Display mit 80% 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 125% der vertikalen und horizontalen Auflösung des tatsächlichen Displays 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: 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 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 ein Object und nicht der Typ der Elemente des zugrunde liegenden Arrays. Der folgende Code führt also 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 auf der Seite zu Verhaltensänderungen in Android 15 im Abschnitt zu Änderungen an der OpenJDK API.

ENABLE_BUNDLE_LAUNCH_ACTIVITY_ITEM

Change 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, erhalten 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, werden Apps auf Geräten mit Android 15 oder höher standardmäßig von Rand zu Rand angezeigt.

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 überprü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, sodass die Standardeinstellungen des Betriebssystems Vorrang haben. 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.

Erzwingt die Unterstützung der HEVC-Medienfunktion für eine App. Apps müssen ihre unterstützten Medienfunktionen in ihrem Manifest angeben. Mit diesem Flag kann jedoch erzwungen werden, dass eine App HEVC unterstützt, um so eine Transcodierung beim Zugriff auf in HEVC codierte Medien zu vermeiden. 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.

Die Größe der Pakete, auf die er angewendet wird, kann nicht geändert werden.

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 Stichprobenerhebung von Fehlern im nativen Arbeitsspeicher in Apps.

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

IS_DEVICE_OWNER_USER_AWARE

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

Wenn diese Option aktiviert ist, wird in der Methode isDeviceOwnerApp(String) der im Kontext enthaltene Nutzer verwendet. Bei 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 entweder 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 gilt nur für 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 (SYNC) Speicher-Tag-Prüfung 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: Deaktiviert für alle Apps.

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 Bildschirmausrichtung können auf Geräten mit großem Display, auf denen ignoreOrientationRequest aktiviert ist, mit dieser Überschreibung auf Vollbild umgestellt werden.

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 Modus für kostenlos geformte Fenster wird die Ausführung auf einem Hochformatgerät emuliert, indem das App-Fenster in Letterbox-Format angezeigt und die Kameraeigenschaften auf die Werte umgestellt werden, die Apps normalerweise auf einem Hochformatgerät erwarten: 90-Grad-Sensordrehung für die Rück- und 270-Grad-Sensordrehung für die Frontkamera 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 bei den betroffenen Paketen der aktuelle Wert von android:resizeableActivity ignoriert und das Ziel-SDK muss Android 6.0 (API-Level 23) oder niedriger sein. Außerdem wird die Aktivität als nicht skalierbar betrachtet. 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 es wird immer CaptureRequest.SCALER_ROTATE_AND_CROP_NONE zurückgegeben.

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

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

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

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

Aktiviert SCREEN_ORIENTATION_REVERSE_LANDSCAPE für die App, auf die es angewendet wird. Sofern OVERRIDE_ANY_ORIENTATION nicht ebenfalls 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 durch das größte aktivierte Seitenverhältnis überschrieben, es sei denn, der Manifestwert der App ist höher.

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

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

Wenn diese Option aktiviert ist, wird die Einschränkung des Mindestseitenverhältnisses im Hochformat-Vollbildmodus überschrieben, um den gesamten verfügbaren Bildschirmbereich 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 auch OVERRIDE_MIN_ASPECT_RATIO aktiviert ist, wird durch diese Änderung für ein Paket das minimale Seitenverhältnis der Aktivität auf einen mittleren Wert gemäß OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE festgelegt.

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

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

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 App, 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

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

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, können Content-Disposition-Header gemäß RFC 6266 geparst werden. 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. Wenn versucht wird, in einem bestimmten Zeitraum mehr Toasts anzuzeigen, als zulässig sind, 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 Zahlensequenz zurück als die Random.nextInt()-Methoden. Dies ist auf die Änderungen unter https://bugs.openjdk.org/browse/JDK-8301574 zurückzuführen.

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 Sprachcodes für Hebräisch, Jiddisch und Indonesisch nicht mehr in ihre veralteten Formen umgewandelt (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.