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

Abbildung 1: Auf dem Bildschirm „Änderungen bei der Kompatibilität von Apps“ in den Entwickleroptionen werden die Änderungen aufgeführt, die Sie aktivieren oder deaktivieren können.

Auf dieser Seite werden umschaltbare Änderungen beschrieben, die Teil des Kompatibilitätsframeworks in Android 14 (API-Level 34) sind. Verwenden Sie diese Liste in Verbindung mit den Entwickleroptionen und ADB-Befehlen, um Ihre App zu testen und zu debuggen, während Sie die Unterstützung von Android 14 vorbereiten.

Mit den Tools des Kompatibilitätsframeworks können Sie unter anderem Folgendes tun:

  • Gezielte Änderungen testen, ohne die targetSdkVersion der App tatsächlich zu ändern: Mit den Ein/Aus-Schaltern können Sie bestimmte Änderungen des Zielverhaltens erzwingen, um die Auswirkungen auf Ihre bestehende App zu bewerten.
  • Konzentrieren Sie sich beim Testen nur auf bestimmte Änderungen. Anstatt alle Änderungen auf einmal vornehmen zu müssen, können Sie mit den Ein/Aus-Schaltern alle Änderungen deaktivieren, die Sie nicht testen möchten.
  • Schalter über adb verwalten Mit adb-Befehlen können Sie die umschaltbaren Änderungen in Ihrer automatisierten Testumgebung aktivieren und deaktivieren.
  • Fehler mithilfe von Standard-Änderungs-IDs schneller beheben: Jede umschaltbare Änderung hat eine eindeutige ID und einen eindeutigen Namen, mit denen Sie die Ursache in der Protokollausgabe schnell debuggen können.

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

Verhaltensänderungen im Kompatibilitäts-Framework

In der Liste in diesem Abschnitt werden umschaltbare Änderungen beschrieben, die im Kompatibilitäts-Framework in Android 14 enthalten sind.

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

Umschaltbare Änderungen im Kompatibilitäts-Framework in Android 14

ACCESS_SHARED_IDENTITY

Änderungs-ID:259743961
Standardstatus: Für alle Apps aktiviert.

Gewährt Zugriff auf die Identität der startenden App, wenn die App die Freigabe ihrer Identität aktiviert hat, indem sie diese Aktivität mit einer Instanz von ActivityOptions gestartet hat, für die ActivityOptions.setShareIdentityEnabled(boolean) mit dem Wert true aufgerufen wurde, oder wenn die UID der gestarteten Aktivität mit der der startenden App übereinstimmt. Wenn diese Änderung aktiviert ist und eine dieser Anforderungen erfüllt ist, kann die Aktivität mit Activity.getLaunchedFromUid() und Activity.getLaunchedFromPackage() auf die UID und den Paketnamen der startenden App zugreifen.

ANR_PRE_UDC_APIS_ON_SLOW_RESPONSES

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

Wenn diese Option aktiviert ist, wird eine ANR-Meldung (Application Not Responding, „Anwendung reagiert nicht“) ausgelöst, wenn Apps langsam auf APIs und Funktionen von Android 13 (API‑Level 33) oder niedriger reagieren.

AUTHORITY_ACCESS_CHECK_CHANGE_ID

Änderungs-ID:207133734
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Für Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, wird die Prüfung des Berechtigungszugriffs für die aufrufende UID für alle synchronisierungsbezogenen APIs aktiviert.

CAMERA_MIC_INDICATORS_NOT_PRESENT

Änderungs-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.

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER

Änderungs-ID:244637991
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Wenn eine App einen PendingIntent über PendingIntent#send() oder ähnliche Methoden sendet, muss sie sich jetzt anmelden, wenn sie ihre eigenen Berechtigungen zum Starten von Hintergrundaktivitäten verwenden möchte, um den ausstehenden Intent zu starten.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite „Verhaltensänderungen in Android 14“ im Abschnitt Zusätzliche Einschränkungen für das Starten von Aktivitäten im Hintergrund.

DETACH_THROWS_ISE_ONLY

Änderungs-ID:236825255
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Die richtige Ausnahme für das Flagging wird von #detachImage ausgegeben.

#detachImage ist so dokumentiert, dass bei einem Fehler IllegalStateException ausgelöst wird. Eine native Hilfsmethode dafür hat RuntimeException ausgelöst, wenn die Oberfläche beim Trennen von Image verlassen wurde.

Dieses bisher nicht dokumentierte Ausnahmeverhalten setzt sich bis Android 13 (API-Level 33) fort.

Ab Android 13 (API‑Level 33) löst die native Hilfsmethode nur noch IllegalStateExceptions gemäß der Dokumentation aus.

Wenn diese Änderung aktiviert ist, löst #detachImage nur dann einen IllegalStateException aus, wenn beim Trennen des Bildes Fehler auftreten. Das Verhalten bleibt für Apps, die auf Android 13 (API‑Level 33) und niedriger ausgerichtet sind, unverändert.

DOWNSCALED

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

Diese Änderung ist die Voraussetzung für alle Änderungen am Puffer-Downscaling pro App. Wenn Sie diese Änderung aktivieren, können die folgenden Skalierungsfaktoren angewendet werden:

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

DOWNSCALED_INVERSE

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

Diese Änderung ist die Voraussetzung für alle Änderungen am inversen Downscaling des Puffers pro App. Wenn Sie diese Änderung aktivieren, können die folgenden Skalierungsfaktoren umgekehrt angewendet werden. Das bedeutet, dass die Auflösung hochskaliert wird:

Wenn diese Änderung für ein App-Paket aktiviert ist, wird die Größe der App auf den niedrigsten aktivierten Skalierungsfaktor angepasst. Beispiel: 80% werden verwendet, wenn sowohl 80% als auch 70 % (DOWNSCALE_80 und DOWNSCALE_70) aktiviert sind, da ein Skalierungsfaktor von 80% bei umgekehrter Anwendung 125 % entspricht, was weniger ist als die 142,86% Skalierung, 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

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

Wenn DOWNSCALED ebenfalls aktiviert ist, wird die App durch Aktivieren dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 30% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, 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, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 35% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 285,71% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_40

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

Wenn DOWNSCALED ebenfalls aktiviert ist, wird die App durch Aktivieren dieser Änderung für ein Paket gezwungen, davon auszugehen, 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 die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 250% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird.

DOWNSCALE_45

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

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

DOWNSCALE_50

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

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

DOWNSCALE_55

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

Wenn DOWNSCALED ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 55% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, 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 DOWNSCALED ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 60% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, 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 DOWNSCALED ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 65% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, 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 DOWNSCALED ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 70% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, 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: Für alle Apps deaktiviert.

Wenn DOWNSCALED ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 75% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, 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, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, dass sie auf einem Display mit 80% der vertikalen und horizontalen Auflösung des tatsächlichen Displays ausgeführt wird. Wenn DOWNSCALED_INVERSE ebenfalls aktiviert ist, wird die App durch die Aktivierung dieser Änderung für ein Paket gezwungen, davon auszugehen, 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: Für alle Apps deaktiviert.

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

DOWNSCALE_90

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

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

ENABLE_PLATFORM_MDNS_BACKEND

Änderungs‑ID:270306772
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Apps, die auf Android 14 oder höher ausgerichtet sind, verwenden eine plattformintegrierte mDNS-Implementierung als Backend. Apps, die auf frühere Versionen ausgerichtet sind, verwenden weiterhin ein altes NSD-Backend (Network Service Discovery) mit einem alten nativen Daemon als NsdManager-Backend.

ENABLE_SELF_CERTIFIED_CAPABILITIES_DECLARATION

Änderungs‑ID:266524688
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Die Überprüfung selbstzertifizierter Funktionen ist für Apps aktiviert, die auf Android 14 oder höher ausgerichtet sind. Weitere Informationen finden Sie unter NetworkCapabilities.

ENFORCE_PACKAGE_VISIBILITY_FILTERING

Änderungs-ID:154726397
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Für Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, müssen in der Manifestdatei die Anforderungen an die Paketsichtbarkeit deklariert werden, um auf die APIs AccountManager zugreifen zu können.

ENFORCE_READ_ONLY_JAVA_DCL

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

Bei Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, müssen alle dynamisch geladenen Dateien als schreibgeschützt gekennzeichnet sein. So wird verhindert, dass Dateien, die dynamisch geladen werden, unerwartet von böswilligen Akteuren überschrieben werden.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite „Verhaltensänderungen in Android 14“ im Abschnitt Sicheres dynamisches Laden von Code.

ENFORCE_STRICT_QUERY_BUILDER

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

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

EXACT_LISTENER_ALARMS_DROPPED_ON_CACHED

Änderungs-ID:265195908
Standardstatus: Für alle Apps aktiviert.

Genaue Alarme, die einen AlarmManager.OnAlarmListener-Callback erwarten, werden verworfen, wenn die aufrufende App in den Cache verschoben wird.

Weitere Informationen zu den Änderungen bei exakten Alarmen in Android 14 finden Sie unter Exakte Alarme werden standardmäßig abgelehnt.

FGS_TYPE_CHECK_FOR_INSTANT_APPS

Änderungs‑ID:261055255
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Wenn aktiviert, müssen Instant-Apps geeignete Typen für Dienste im Vordergrund für alle Dienste angeben, die in der Manifestdatei der App deklariert sind.

Weitere Informationen zu dieser Änderung

FGS_TYPE_NONE_DEPRECATION_CHANGE_ID

Änderungs-ID:255042465
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, wird in Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind und einen Dienst im Vordergrund mit dem eingestellten Typ FOREGROUND_SERVICE_TYPE_NONE starten, eine Warnung im Log angezeigt.

Weitere Informationen zu dieser Änderung

FGS_TYPE_NONE_DISABLED_CHANGE_ID

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

Wenn diese Option aktiviert ist, führt das Starten eines Dienstes im Vordergrund mit dem eingestellten Typ FOREGROUND_SERVICE_TYPE_NONE in Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, zu einer Ausnahme.

Weitere Informationen zu dieser Änderung

FGS_TYPE_PERMISSION_CHANGE_ID

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

Wenn diese Option aktiviert ist, führt das Starten eines Dienstes im Vordergrund ohne die erforderlichen Berechtigungen, die mit dem Typ des Dienstes im Vordergrund verknüpft sind, bei Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, zu einer SecurityException.

Weitere Informationen zu dieser Änderung

FORCE_DISABLE_HEVC_SUPPORT

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

Erzwingen, dass eine App die HEVC-Mediafunktion nicht unterstützt Apps sollten ihre unterstützten Media-Funktionen in ihrem Manifest deklarieren. Dieses Flag kann jedoch verwendet werden, um zu erzwingen, dass eine App HEVC nicht unterstützt. Dadurch wird die Transcodierung beim Zugriff auf in HEVC codierte Medien erzwungen. Wenn Sie dieses Flag festlegen, 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

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

Erzwingen, dass eine App die HEVC-Mediafunktion unterstützt: Apps sollten ihre unterstützten Mediafunktionen in ihrem Manifest deklarieren. Mit diesem Flag kann jedoch erzwungen werden, dass eine App HEVC unterstützt. So wird das Transcodieren beim Zugriff auf in HEVC codierte Medien vermieden. Wenn Sie dieses Flag festlegen, 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_DISABLE_HEVC_SUPPORT aktiviert sind, werden beide Flags vom Betriebssystem ignoriert.

FORCE_NON_RESIZE_APP

Änderungs-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

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

Erzwingt, dass die Größe der Pakete, auf die es angewendet wird, angepasst werden kann. Wir erlauben das Ändern der Größe nur im Vollbildmodus, erzwingen aber nicht, dass die App in den Mehrfenstermodus mit anpassbarer Größe wechselt.

GWP_ASAN

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

Aktiviert die Erkennung von Fehlern im nativen Arbeitsspeicher in Apps.

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

IMPLICIT_INTENTS_ONLY_MATCH_EXPORTED_COMPONENTS

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

Bei Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, müssen Komponenten exportiert werden, damit sie über implizite Intents aufgerufen werden können. Wenn eine Komponente nicht exportiert und aufgerufen wird, wird sie aus der Liste der Receiver entfernt. Das gilt insbesondere für Aktivitäten und Übertragungen.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite mit den Verhaltensänderungen in Android 14 im Abschnitt zu Einschränkungen für implizite und ausstehende Intents.

Änderungs-ID:266201607
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Bei Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, muss vor jeder MediaProjection-Aufnahmesitzung die Einwilligung des Nutzers eingeholt werden.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite „Verhaltensänderungen in Android 14“ im Abschnitt dazu, wie für jede MediaProjection-Aufnahmesitzung eine Einwilligung des Nutzers erforderlich ist.

NATIVE_HEAP_ZERO_INIT

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

Aktivieren Sie die automatische Nullinitialisierung von Zuweisungen für den nativen Heap-Speicher.

NATIVE_MEMTAG_ASYNC

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

Aktivieren Sie die asynchrone (ASYNC) Prüfung von Speicher-Tags in diesem Prozess. Dieses Flag wirkt sich nur auf Hardware aus, die die ARM Memory Tagging Extension (MTE) unterstützt.

NATIVE_MEMTAG_SYNC

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

Aktiviert die synchrone (SYNC) Überprüfung von Speicher-Tags in diesem Prozess. Dieses Flag wirkt sich nur auf Hardware aus, 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

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

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

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

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

Wenn diese Änderung aktiviert ist, wird für die Pakete, auf die sie angewendet wird, der aktuelle Wert von android:resizeableActivity sowie das Ziel-SDK, das gleich oder niedriger als M ist, ignoriert und die Aktivität wird als nicht anpassbar betrachtet. In diesem Fall hängt der Wert für „Kamera drehen“ und „Zuschneiden“ nur von der erforderlichen Kompensation in Bezug auf die aktuelle Displaydrehung ab.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

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

Wenn diese Option aktiviert ist, wird das Standardverhalten für das Drehen und Zuschneiden der Kamera für die Pakete, auf die sie angewendet wird, überschrieben und es wird immer CaptureRequest.SCALER_ROTATE_AND_CROP_NONE zurückgegeben.

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

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

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

OVERRIDE_MIN_ASPECT_RATIO

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

Diese Änderung ist die Grundlage 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 App-Manifest angegebene Mindestseitenverhältnis durch das größte aktivierte Seitenverhältnis überschrieben, sofern der Wert im App-Manifest nicht höher ist.

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 Vollbildmodus im Hochformat überschrieben, um den gesamten verfügbaren Bildschirmplatz zu nutzen.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

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

Wenn auch OVERRIDE_MIN_ASPECT_RATIO aktiviert ist, wird durch Aktivieren dieser Ä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 wird.

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

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

Wenn auch OVERRIDE_MIN_ASPECT_RATIO aktiviert ist, wird durch die Aktivierung dieser Änderung für ein Paket das Mindestseitenverhältnis der Aktivität auf einen mittleren Wert festgelegt, der durch OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE definiert wird.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

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

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

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

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

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

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

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

Aktiviert SCREEN_ORIENTATION_NOSENSOR für die App, auf die sie 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 sie 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.

RATE_LIMIT_TOASTS

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

Ermöglicht die Ratenbegrenzung für die Anzahl der Toast.show()-Aufrufe, um zu verhindern, dass der Nutzer innerhalb eines begrenzten Zeitraums zu viele Benachrichtigungen erhält. Wenn in einem bestimmten Zeitraum versucht wird, mehr Benachrichtigungen als zulässig anzuzeigen, wird die Benachrichtigung verworfen.

REJECT_NEGATIVE_NETWORK_ESTIMATES

Änderungs-ID:253665015
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Wenn diese Option aktiviert ist, müssen die geschätzten Netzwerkbytes nicht negativ sein.

REQUIRE_NETWORK_CONSTRAINT_FOR_NETWORK_JOB_WORK_ITEMS

Änderungs-ID:241104082
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Für Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, muss für den Hosting-Job eine Netzwerkeinschränkung angegeben werden, wenn die enthaltene JobWorkItem auf die Netzwerknutzung hinweist.

REQUIRE_NETWORK_PERMISSIONS_FOR_CONNECTIVITY_JOBS

Änderungs-ID:271850009
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Bei Apps, die auf Android 14 (API‑Level 34) und höher ausgerichtet sind, müssen sowohl die Berechtigungen INTERNET als auch ACCESS_NETWORK_STATE angegeben werden, wenn ein Job mit einer Konnektivitätseinschränkung geplant wird.

THROW_ON_INVALID_DATA_TRANSFER_IMPLEMENTATION

Änderungs-ID:255371817
Standardstatus: Aktiviert für Apps, die auf Android 14 (API‑Level 34) oder höher ausgerichtet sind.

Bei Apps, die auf Android 14 (API-Level 34) und höher ausgerichtet sind, löst das System eine Ausnahme aus, wenn eine App nicht alle erforderlichen APIs für die Datenübertragung ordnungsgemäß implementiert, wenn ein vom Nutzer initiierter Datenübertragungsvorgang angegeben wird.

Weitere Informationen zu dieser Änderung finden Sie auf der Seite zur Migration von Vordergrunddiensten zu vom Nutzer initiierten Datenübertragungs-Jobs.

USE_EXPERIMENTAL_COMPONENT_ALIAS

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

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