Zmiany platformy zgodności (Android 15)

Rysunek 1. Ekran Zmiany zgodności aplikacji w sekcji Deweloper zawiera listę zmian, które możesz zmienić.

Na tej stronie opisujemy zmiany, które można przełączać, które są częścią zgodności platformy w Androidzie 15 (poziom API 35). Korzystaj z tej listy w połączeniu z opcji programisty i poleceń ADB, testowania i debugowania aplikacji w ramach przygotowań do wprowadzenia jej na rynek i kierowania na Androida 15.

Oto niektóre czynności, które można wykonać za pomocą narzędzi platformy zgodności:

  • Przetestuj kierowane zmiany bez zmiany targetSdkVersion. Za pomocą przełączników możesz wymusić włączenie określonych ukierunkowanych zmian działania, aby ocenić ich wpływ na istniejącą aplikację.
  • Skup się na testowaniu tylko konkretnych zmian. Zamiast wprowadzić zmiany we wszystkich wybranych zmianach jednocześnie, za pomocą przełączników z wyjątkiem tych, które chcesz przetestować.
  • Zarządzanie przełącznikami w narzędziu adb Za pomocą poleceń adb możesz: włączanie i wyłączanie możliwych do przełączenia zmian w teście automatycznym dla środowiska.
  • Szybsze debugowanie przy użyciu standardowych identyfikatorów zmian Każda z możliwością przełączania zmian ma unikalny identyfikator i nazwa, które pozwalają szybko debugować główną przyczynę dane wyjściowe dziennika.

Szczegółowe informacje o korzystaniu z narzędzi w każdym z tych przypadków użycia znajdziesz w artykule Narzędzia platformy zgodności.

Zmiany w działaniu uwzględnione w ramach zgodności

Lista w tej sekcji opisuje możliwe do zmiany zmiany uwzględnione w platforma zgodności dla zmian związanych z Androidem 15 i zmian z możliwością przełączania które mogą pomóc w ogólnym testowaniu aplikacji.

Listę zmian możesz filtrować według stanu domyślnego.

Zmiany w platformie zgodności z możliwością przełączania w Androidzie 15

CAMERA_MIC_INDICATORS_NOT_PRESENT

Identyfikator zmiany: 162547999
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Wskazuje, że to urządzenie obsługuje aparat i mikrofon wskaźnikami. Wartość wynosi false, jeśli występuje, ponieważ CompatChanges#isChangeEnabled. jeśli nie podano identyfikatora zmiany, zwraca wartość true.

CHECK_PARAMS_IN_IS_SESSION_CONFIGURATION_SUPPORTED

Identyfikator zmiany: 320741775
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Po włączeniu: isSessionConfigurationSupported sprawdza też zgodność parametrów sesji, jeśli są obsługiwane przez HAL.

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_CREATOR

Identyfikator zmiany: 296478951
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, twórca blokady PendingIntent uruchomienie aktywności w tle domyślnie.

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Uruchomiono bezpieczną aktywność w tle.

DEPRECATE_UI_FONT

Identyfikator zmiany: 279646685
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, Atrybut elegantTextHeight TextView domyślnie zmienia się na true, gdy aplikacja działa na urządzeniu z Androidem 15 lub nowszym. Domyślnie kompaktowa czcionka jest zastąpiona skrypty, które mają duże dane pionowe, czytelniejsze.

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Atrybut eleganckiTextHeight ma wartość domyślną.

DOWNSCALED

Zmień identyfikator: 168419799
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Ta zmiana to strażnik buforowania całego bufora według aplikacji zmian. Włączenie tej zmiany umożliwia poniższe współczynniki skalowania zastosuj:

Po włączeniu tej zmiany w pakiecie aplikacji aplikacja zostanie wymuszona został zmniejszony do najwyższego, włączonego współczynnika skalowania. Na przykład 80% to używany, jeśli zarówno 80%, jak i 70% (DOWNSCALE_80 i DOWNSCALE_70) są włączone. Gdy zarówno ta zmiana, DOWNSCALED_INVERSE jest włączono, DOWNSCALED_INVERSE ma pierwszeństwo, a współczynnik skalowania jest stosowany odwrotnie.

DOWNSCALED_INVERSE

Identyfikator zmiany: 273564678
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Ta zmiana pełni funkcję strażnika wszystkich odwrotności buforów poszczególnych aplikacji i obniżaniu skali. Włączenie tej zmiany spowoduje, że: odwrotne zastosowanie współczynników skalowania (tzn. rozdzielczość jest powiększony):

Po włączeniu tej zmiany w pakiecie aplikacji aplikacja zostanie wymuszona zmniejszono rozmiar do najniższego, włączonego współczynnika skalowania. Na przykład 80% to używany, jeśli zarówno 80%, jak i 70% (DOWNSCALE_80 i DOWNSCALE_70) są włączone ponieważ przy odwrotnym zastosowaniu współczynnik skalowania 80% równa się 125%, która jest mniejsza niż 142,86% skalowania, które jest stosowane w przypadku odwrotności z wykorzystaniem współczynnika skalowania 70%. Gdy zarówno ta zmiana, DOWNSCALED jest włączono, DOWNSCALED_INVERSE ma pierwszeństwo, a współczynnik skalowania jest stosowany odwrotnie.

DOWNSCALE_30

Identyfikator zmiany: 189970040
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 30% powierzchni w pionie i w poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu z 333,33% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_35

Zmień identyfikator: 189969749
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 35% powierzchni w pionie i poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu o 285,71% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_40

Identyfikator zmiany: 189970038
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 40% obszaru wyświetlania w pionie i w poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Przyjmijmy, że jest on wyświetlany na wyświetlaczu, w którym 250% obszaru ekranu jest ustawiony w pionie, w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_45

Zmień identyfikator: 189969782
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jeśli jest wyświetlana na ekranie, 45% obszaru obrazu w pionie i poziomie do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu i ma 222,22% odchylenia w pionie, w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_50

Zmień identyfikator: 176926741
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 50% powierzchni w pionie i w poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Przyjmijmy, że jest on wyświetlany na wyświetlaczu, w którym 200% obszaru ekranu jest ustawiony w pionie, w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_55

Identyfikator zmiany: 189970036
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 55% powierzchni w pionie i poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu o 181,82% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_60

Identyfikator zmiany: 176926771
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 60% obszaru pionowego i poziomego do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu o 166,67% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_65

Zmień identyfikator: 189969744
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 65% powierzchni w pionie i poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na ekranie z 153,85% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_70

Zmień identyfikator: 176926829
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 70% obszaru pionowego i poziomego do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu z 142,86% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_75

Zmień identyfikator: 189969779
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 75% powierzchni w pionie i poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu z 133,33% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_80

Identyfikator zmiany: 176926753
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jeśli jest wyświetlana na ekranie, 80% obszaru ekranu w pionie i poziomie do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu, w którym 125% w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_85

Zmień identyfikator: 189969734
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji jeśli wyświetla się na wyświetlaczu 85% obszaru roboczego i poziomego do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładam, że jest on wyświetlany na wyświetlaczu o 117,65% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DOWNSCALE_90

Zmień identyfikator: 182811243
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli DOWNSCALED również ma wartość jest włączony, włączenie tej zmiany w pakiecie wymusza na aplikacji Jest on wyświetlany na wyświetlaczu i ma 90% powierzchni w pionie i poziomie. do rozdzielczości rzeczywistego wyświetlacza. Jeśli DOWNSCALED_INVERSE to także włączone. Włączenie tej zmiany w przypadku pakietu wymusza na aplikacji Zakładamy, że jest on wyświetlany na wyświetlaczu o 111,11% odchylenia w pionie w poziomie rzeczywistego wyświetlacza.

DO_NOT_CLONE_IN_ARRAYS_AS_LIST

Identyfikator zmiany: 202956589
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Po włączeniu i używaniu Arrays.asList(...).toArray(), typ komponentu tablica wynikowa jest teraz Object – nie typ elementów tablicy bazowej. Zatem ten kod rzuca ClassCastException:

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

Aby zachować w tym przypadku komponent String w tablicy wynikowej, możesz użyć Collection.toArray(Object[]) zamiast:

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

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Zmiany w interfejsie OpenJDK API.

ENABLE_BUNDLE_LAUNCH_ACTIVITY_ITEM

Identyfikator zmiany: 324203798
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, istniejące aplikacje nie będą miały problemów ze zgodnością w przypadku użycia funkcji spoza SDK ClientTransaction#getActivityToken() zezwalaj tylko na grupowanie LaunchActivityItem

ENABLE_MATCH_LOCAL_NETWORK

Identyfikator zmiany: 319212206
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, aplikacje domyślnie otrzymują wywołania zwrotne z sieci lokalnych. Aplikacje kierowane na Androida 14 (poziom interfejsu API 34) lub starszego nadal muszą dodać NetworkCapabilities.NET_CAPABILITY_LOCAL_NETWORK do NetworkCapabilities elementu NetworkRequest, aby otrzymywać ConnectivityManager.NetworkCallback z sieci lokalnych.

ENABLE_STRICT_FORMATTER_VALIDATION

Identyfikator zmiany: 270674727
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, weryfikacja indeksu argumentu, flag, szerokości i dokładności jest teraz bardziej rygorystyczna podczas korzystania z funkcji Interfejsy API: String.format() i Formatter.format().

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Zmiany w interfejsie OpenJDK API.

ENFORCE_EDGE_TO_EDGE

Identyfikator zmiany: 309578419
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, aplikacje będą domyślnie wyświetlane na urządzeniach brzegowych z Androidem 15 lub nowszym.

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Egzekwowanie zasad od krawędzi do krawędzi

ENFORCE_STRICT_QUERY_BUILDER

Identyfikator zmiany: 143231523
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, SQLiteQueryBuilder weryfikuje wszystkie Wybrane zapytania (CalendarProvider2) względem złośliwego oprogramowania .

FGS_BOOT_COMPLETED_RESTRICTIONS

Identyfikator zmiany: 296558535
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, wyłączana jest usługa działającej na pierwszym planie w tle BOOT_COMPLETED – komunikaty dla wszystkich typów z wyjątkiem:

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Ograniczenia dotyczące BOOT_COMPLETED odbiorników uruchamianie usług działających na pierwszym planie.

FGS_INTRODUCE_TIME_LIMITS

Zmień identyfikator: 317799821
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, określone typy usług działających na pierwszym planie mają limit czasu. Jeśli usługa działająca na pierwszym planie niewłaściwego typu nie zostanie zatrzymana w przydzielonym czasie, otrzyma wywołanie zwrotne za pomocą funkcji Service.onTimeout(int, int), a następnie musi zostać zatrzymane w ciągu kilku sekund. Jeśli aplikacja tego nie zrobi, zostanie zgłoszona jako błąd ANR.

Więcej informacji o tej zmianie znajdziesz w sekcjach na temat Strona 15 zmian dotyczących zachowania limitu czasu dla synchronizacji danych oraz przetwarzanie multimediów typów usług na pierwszym planie.

FGS_SAW_RESTRICTIONS

Zmień identyfikator: 319471980
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, powoduje wyłączenie usługi działającej na pierwszym planie w oknie alertu systemowego dla wszystkich typów, chyba że ma już okno nakładki systemowej.

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Ograniczenia uruchamiania usług na pierwszym planie, gdy aplikacja ma uprawnienie SYSTEM_ALERT_WINDOW.

FORCE_DISABLE_HEVC_SUPPORT

Zmień identyfikator: 174227820
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Wymuszaj wyłączenie obsługi multimediów HEVC przez aplikację. Aplikacje powinny zadeklarować obsługiwane możliwości multimedialne w sekcji pliku manifestu, ale ta flaga może służyć do wymuszania na aplikacji obsługuje HEVC, co wymusza transkodowanie podczas uzyskiwania dostępu do multimediów zakodowane w HEVC. Ustawienie tej flagi zastępuje wszystkie wartości domyślne na poziomie systemu operacyjnego dla aplikacji. Jest ona domyślnie wyłączona, co oznacza, że system operacyjny będzie działał domyślnie. mają pierwszeństwo. Jeśli zarówno ta flaga, jak i Włączono FORCE_ENABLE_HEVC_SUPPORT, system operacyjny ignoruje obie flagi.

FORCE_ENABLE_HEVC_SUPPORT

Zmień identyfikator: 174228127
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Wymuś włączenie przez aplikację obsługi multimediów HEVC powinni zadeklarować w pliku manifestu obsługiwane możliwości w zakresie multimediów ale tej flagi można użyć do wymuszania przez aplikację obsługi HEVC, dlatego oraz uniknąć transkodowania przy dostępie do multimediów zakodowanych w HEVC. Ustawienie ta flaga zastępuje wszelkie wartości domyślne na poziomie systemu operacyjnego dla aplikacji. Wyłączono przez domyślnie, co oznacza, że pierwszeństwo mają ustawienia domyślne systemu operacyjnego. Jeśli oba ta flaga i FORCE_DISABLE_HEVC_SUPPORT są włączone, system operacyjny ignoruje obie flagi.

FORCE_NON_RESIZE_APP

Zmień identyfikator: 181146395
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Wymusza, aby w pakietach, do których jest stosowany, nie można było zmieniać ich rozmiaru.

FORCE_RESIZE_APP

Identyfikator zmiany: 174042936
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Wymusza zmianę rozmiaru pakietów, do których jest stosowany. My tylko zezwalaj na zmianę rozmiaru w trybie pełnego ekranu, ale nie wymuszaj w trybie wielu okien z możliwością zmiany rozmiaru.

GWP_ASAN

Identyfikator zmiany: 145634846
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Umożliwia wykrywanie błędów w próbkowanej pamięci natywnej w aplikacjach.

Aby dowiedzieć się więcej o korzystaniu z GWP-ASan, zobacz Przewodnik po GWP-ASan.

IS_DEVICE_OWNER_USER_AWARE

Identyfikator zmiany: 307233716
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, metoda isDeviceOwnerApp(String) używa użytkownika znajdującego się w kontekście. W przypadku aplikacji kierowanych na Androida 14 (poziom interfejsu API 34) lub starszego będzie używany użytkownik procesu nawiązywania połączenia (Process.myUserHandle()).

MANAGE_GLOBAL_ZEN_VIA_IMPLICIT_RULES

Identyfikator zmiany: 308670109
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Po włączeniu tej funkcji aplikacje nie mogą już zmieniać globalnego stanu ani zasad trybu Nie przeszkadzać na urządzeniu (przez modyfikowanie ustawień użytkownika lub wyłączenie trybu Nie przeszkadzać). Zamiast tego aplikacje muszą przesłać AutomaticZenRule który łączy system w globalną politykę z obecnym schematem zapewniającym zwycięstwo w najbardziej restrykcyjny sposób.

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Zmiany dotyczące tego, kiedy aplikacje mogą modyfikować globalny stan trybu Nie przeszkadzać

NATIVE_HEAP_ZERO_INIT

Identyfikator zmiany: 178038272
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Włącz automatyczne zerowe inicjowanie natywnej pamięci sterty alokacje.

NATIVE_MEMTAG_ASYNC

Identyfikator zmiany: 145772972
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Włącz w tym procesie asynchroniczne sprawdzanie tagów pamięci (ASYNC). Ta flaga ma wpływ tylko na sprzęt obsługujący tagowanie pamięci ARM Rozszerzenie (MTE).

NATIVE_MEMTAG_SYNC

Zmień identyfikator: 177438394
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Włącza synchroniczne (SYNC) sprawdzanie tagów pamięci w tym procesie. Ta flaga ma wpływ tylko na sprzęt obsługujący tagowanie pamięci ARM Rozszerzenie (MTE). Jeśli zarówno NATIVE_MEMTAG_ASYNC, jak i ten element jest włączona, ta opcja ma pierwszeństwo, a MTE jest włączone w trybie SYNCHRONIZACJA.

OVERRIDE_ANY_ORIENTATION

Identyfikator zmiany: 265464455
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, ta zmiana zezwala na następującą orientację zastąpienia, które mają być stosowane niezależnie od orientacji żądanej przez aktywność:

OVERRIDE_ANY_ORIENTATION_TO_USER

Zmień identyfikator: 310816437
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Jeśli ta opcja jest włączona, włącza się SCREEN_ORIENTATION_USER co zastępuje dowolną orientację żądanej przez aktywność. Stałe aplikacje w orientacji poziomej można zastąpić na dużym ekranie w trybie pełnoekranowym urządzenia, na których włączono ignoreOrientationRequest nadpisać.

OVERRIDE_CAMERA_COMPAT_DISABLE_FREEFORM_WINDOWING_TREATMENT

Zmień identyfikator: 314961188
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, pakiety, do których jest stosowane zastępowanie, są wykluczane z procedury zgodności z aparatem w trybie okien swobodnych w aplikacjach o stałej orientacji.

W trybie swobodnego wyświetlania okien tryb zgodności emuluje działanie na urządzeniu w orientacji pionowej przez ustawienie czarnych pasów w oknie aplikacji i zmianę właściwości aparatu zgodnie z oczekiwaniami aplikacji w orientacji pionowej: odpowiednio 90 i 270 obrót czujnika dla tylnego i przedniego aparatu oraz ustawienie obrotu wyświetlacza na 0.

Użyj tej flagi, aby wyłączyć oznaczenie zgodności w przypadku aplikacji, które nie reagują dobrze na eksperyment.

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

Zmień identyfikator: 191514214
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, ta zmiana wymusza pakiety, do których jest stosowana zignoruj bieżącą wartość android:resizeableActivity oraz docelowy pakiet SDK w wersji nie starszej niż 6.0 (poziom interfejsu API) 23) i traktować aktywność jako niemożliwą do zmiany rozmiaru. W tym przypadku parametr zależy od niezbędnego w odniesieniu do bieżącej rotacji wyświetlacza.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

Identyfikator zmiany: 189229956
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, ta zmiana wymusza pakiety, do których jest stosowana zastąpi domyślny obrót i przycięcie kamery i zawsze zwróć CaptureRequest.SCALER_ROTATE_AND_CROP_NONE.

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

Identyfikator zmiany: 316897322
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, podczas inicjowania sesji MediaProjection użytkownicy mają możliwość wyboru przechwycenia pojedynczej aplikacji lub całego ekranu. Ta funkcja zastępuje używanie MediaProjectionConfig#createConfigForDefaultDisplay

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

Zmień identyfikator: 266124927
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Włączenia SCREEN_ORIENTATION_REVERSE_LANDSCAPE w przypadku aplikacji, w której jest on zastosowany. O ile OVERRIDE_ANY_ORIENTATION jest również włączona, wartość SCREEN_ORIENTATION_REVERSE_LANDSCAPE jest używany tylko wtedy, gdy aktywność ma orientację poziomą. Włączam Ta zmiana pomoże Ci przetestować działanie aplikacji pod kątem różnic między urządzeniami, gdy orientacja pozioma odpowiada Surface.ROTATION_90 i powiązanych urządzeń. Surface.ROTATION_270

OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE

Identyfikator zmiany: 332679525
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, zastępuje układ w trybie wycięcia w ekranie. Ma zastosowanie tylko wtedy, gdy nie jest wymuszone połączenie od krawędzi do krawędzi.

OVERRIDE_MIN_ASPECT_RATIO

Zmień identyfikator: 174042980
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Ta zmiana to strażnik wszystkich zmian, które wymuszają użycie danego minimalnego współczynnika proporcji. Włączenie tej zmiany umożliwia osiągnięcie minimalnego aspektu współczynniki do zastosowania:

Po włączeniu tej zmiany dla pakietu aplikacji minimalny aspekt współczynnik podany w pliku manifestu aplikacji zostaje zastąpiony największego włączonego format obrazu, chyba że wartość w pliku manifestu aplikacji jest wyższa.

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

Identyfikator zmiany: 218959984
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, zastępuje minimalne ograniczenie formatu obrazu w do pełnego ekranu w orientacji pionowej, aby wykorzystać całą dostępną przestrzeń na ekranie.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

Identyfikator zmiany: 180326787
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Kiedy OVERRIDE_MIN_ASPECT_RATIO jest również włączony, więc włączenie tej zmiany dla pakietu ustawia z minimalnym współczynnikiem proporcji do dużej wartości zdefiniowanej przez OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

Identyfikator zmiany: 180326845
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Kiedy OVERRIDE_MIN_ASPECT_RATIO jest również włączony, więc włączenie tej zmiany dla pakietu ustawia przez minimalny współczynnik proporcji aktywności do średniej wartości, zgodnie z definicją OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

Identyfikator zmiany: 325586858
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, ogranicza stosowanie ograniczeń, które wymuszają stosowanie danego minimalnego współczynnika proporcji. Dzięki temu są one stosowane tylko wtedy, gdy aplikacja jest połączona z kamerą.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

Identyfikator zmiany: 203647190
Stan domyślny: włączone w przypadku wszystkich aplikacji.

Kiedy OVERRIDE_MIN_ASPECT_RATIO jest również włączona, jednak ta zmiana ogranicza wszelkie inne zmiany, które wymuszają do określonej wartości, na przykład OVERRIDE_MIN_ASPECT_RATIO_LARGE oraz OVERRIDE_MIN_ASPECT_RATIO_MEDIUM– również w orientacji pionowej.

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

Identyfikator zmiany: 236283604
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, ta zmiana nie obejmuje pakietów, które są stosowane do przed ograniczeniami ignorowania orientacji, które są stosowane co można ustawić.

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

Identyfikator zmiany: 265451093
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Włączenia SCREEN_ORIENTATION_NOSENSOR w przypadku aplikacji, w której jest on zastosowany. O ile OVERRIDE_ANY_ORIENTATION jest również włączona, wartość SCREEN_ORIENTATION_NOSENSOR jest używana tylko wtedy, gdy aktywność nie określa żadnego innego stałego orientacji ekranu.

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

Identyfikator zmiany: 265452344
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Włączenia SCREEN_ORIENTATION_PORTRAIT w przypadku aplikacji, w której jest on zastosowany. O ile OVERRIDE_ANY_ORIENTATION jest również włączona, wartość SCREEN_ORIENTATION_PORTRAIT jest używana tylko wtedy, gdy aktywność nie określa żadnego innego stałego orientacji ekranu.

PARSE_CONTENT_DISPOSITION_USING_RFC_6266

Identyfikator zmiany: 319400769
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, umożliwia analizowanie nagłówków Content-Disposition zgodnych ze standardem RFC 6266. Umożliwia to w szczególności analizowanie wartości filename*, które mogą mieć inne kodowanie znaków.

RATE_LIMIT_TOASTS

Identyfikator zmiany: 174840628
Stan domyślny: tej zmiany nie można przełączyć. Jest rejestrowany tylko przez platformę zgodności.

Włącza ograniczenie liczby żądań Toast.show() aby zapobiec nadmiernemu obciążeniu użytkownika zbyt dużą liczbą komunikatów wyświetlanych w reklamie ograniczone czasowo. Każda próba wyświetlenia większej liczby powiadomień niż dozwolona w w określonym przedziale czasu tost jest odrzucany.

STREAM_INT_DIFFERS_FROM_NEXT_INT

Zmień identyfikator: 308103782
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, metody Random.ints() zwracają teraz błąd inna sekwencja liczb niż Random.nextInt() co daje różne możliwości. Wynika to ze zmian w https://bugs.openjdk.org/browse/JDK-8301574

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Zmiany w interfejsie OpenJDK API.

USE_EXPERIMENTAL_COMPONENT_ALIAS

Identyfikator zmiany: 196254758
Stan domyślny: wyłączone w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, system zezwala na korzystanie z „Androida” pakiet do użycia aliasy komponentów.

USE_NEW_ISO_LOCALE_CODES

Identyfikator zmiany: 291868760
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 15 (poziom interfejsu API 35) lub nowszego.

Gdy ta opcja jest włączona, kody języków dla hebrajskiego, jidysz i indonezyjskiego nie są już konwertowane na przestarzałą formę (hebrajski: iw, jidysz: ji, indonezyjski: in).

Więcej informacji o tej zmianie znajdziesz w sekcji dotyczącej Androida 15 zmiana zachowania strona o Zmiany w interfejsie OpenJDK API.