Zmiany platformy zgodności (Android 13)

Rysunek 1 Ekran Zmiany zgodności aplikacji w opcjach programisty zawiera listę zmian, które możesz przełączyć.

Na tej stronie opisujemy zmiany, które można przełączać, będące częścią struktury zgodności w Androidzie 13 (poziom API 33). Użyj tej listy w połączeniu z opcjami programisty i poleceniami ADB, aby przetestować i debugować aplikację w ramach przygotowań do wprowadzenia jej na rynek i kierowania na Androida 13.

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

  • Przetestuj docelowe zmiany bez zmiany wartości targetSdkVersion w aplikacji. Za pomocą przełączników możesz wymusić włączenie określonych docelowych zmian działania i ocenić ich wpływ na istniejącą aplikację.
  • Skup się na testowaniu tylko konkretnych zmian. Zamiast wprowadzać wszystkie docelowe zmiany jednocześnie, przełączniki pozwalają wyłączyć wszystkie docelowe zmiany z wyjątkiem tych, które chcesz przetestować.
  • Zarządzanie przełącznikami w narzędziu adb Za pomocą poleceń adb możesz włączać i wyłączać przełączane zmiany w automatycznym środowisku testowym.
  • Szybsze debugowanie przy użyciu standardowych identyfikatorów zmian Każda z możliwością przełączania zmian ma unikalny identyfikator i nazwę, które pozwalają szybko debugować główną przyczynę w danych wyjściowych logu.

Szczegółowe informacje o korzystaniu z narzędzi w każdym z tych przypadków 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 platformie zgodności w Androidzie 13.

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

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

ACCOUNT_ACCESS_CHECK_CHANGE_ID

Identyfikator zmiany: 201794303
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego, umożliwia sprawdzanie dostępu do konta dla wywoływania UID wszystkich interfejsów API związanych z synchronizacją.

ALLOW_COPY_SOLID_COLOR_VIEW

Identyfikator zmiany: 205907456
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego, aplikacja może odbierać wywołanie zwrotne SplashScreen.OnExitAnimationListener.onSplashScreenExit(SplashScreenView), nawet jeśli na ekranie powitalnym jest tylko jednolity kolor.

ALLOW_SECURE_ACTIVITY_DISPLAY_ON_REMOTE_DEVICE

Identyfikator zmiany: 201712607
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowsze wersje umożliwia wyświetlanie bezpiecznej aktywności na urządzeniach zdalnych, jeśli jest to wymagane.

BORINGLAYOUT_FALLBACK_LINESPACING

Identyfikator zmiany: 210923482
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego włącza ono zastępcze odstępy między wierszami (wysokość wierszy) w funkcji BoringLayout.

CALL_REDIRECTION_AUDIO_MODES

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

W aplikacjach kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego zezwala na używanie trybów audio do przekierowywania dźwięku połączeń.

CAMERA_MIC_INDICATORS_NOT_PRESENT

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

Wskazuje, że urządzenie obsługuje wskaźniki aparatu i mikrofonu. Wartość false, jeśli występuje, ponieważ metoda CompatChanges#isChangeEnabled zwraca true, jeśli nie podano identyfikatora zmiany.

CLEAR_SHOW_FORCED_FLAG_WHEN_LEAVING

Identyfikator zmiany: 214016041
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego zapobiega to działaniu flagi SHOW_FORCED, chyba że element wywołujący jest obecnie wybrany.

DEFER_BOOT_COMPLETED_BROADCAST_CHANGE_ID

Identyfikator zmiany: 203704822
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego, odłóż transmisje LOCKED_BOOT_COMPLETED i BOOT_COMPLETED do momentu pierwszego uruchomienia dowolnego procesu w UID.

DISALLOW_DEADLINES_FOR_PREFETCH_JOBS

Identyfikator zmiany: 194532703
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego zabronione jest ustawienie terminu zadań pobierania z wyprzedzeniem (za pomocą funkcji JobInfo.Builder.setOverrideDeadline(long)) (JobInfo.Builder.setPrefetch(boolean)). Zadania pobierania z wyprzedzeniem powinny być uruchamiane w pobliżu następnego uruchomienia aplikacji, więc nie można określać terminów. System nie usunie jednak ani nie anuluje żadnych wcześniej zaplanowanych zadań pobierania z wyprzedzeniem z określonym terminem.

Aplikacja nie ma możliwości zachowania stale zaplanowanego zadania pobierania z wyprzedzeniem z określonym terminem. Zadania pobierania z wyprzedzeniem będą uruchamiane, a aplikacje objęte tym ograniczeniem nie będą mogły planować nowych zadań pobierania z wyprzedzeniem z terminem. Jeśli zadanie zostanie przełożone, podając true z użyciem wartości zwracanej z JobService.jobFinished(JobParameters, boolean) lub JobService.onStopJob(JobParameters), termin zostanie cofnięty. Zadania okresowe wymagają spełnienia wszystkich ograniczeń, więc te ograniczenia nie mają zastosowania do terminów.

DOWNSCALED

Identyfikator zmiany: 168419799
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Ta zmiana umożliwia obserwowanie wszystkich zmian skalowania buforów w buforze aplikacji. Włączenie tej zmiany umożliwia zastosowanie tych współczynników skalowania:

Gdy ta zmiana zostanie włączona dla pakietu aplikacji, rozmiar aplikacji zostanie wymuszony na najwyższym, włączonym współczynniku skalowania. Na przykład wartość 80% jest używana, jeśli włączone jest zarówno 80%, jak i 70% (DOWNSCALE_80 i DOWNSCALE_70).

DOWNSCALE_30

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

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 30% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DOWNSCALE_35

Identyfikator zmiany: 189969749
Stan domyślny: wyłączona w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 35% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DOWNSCALE_40

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

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na wyświetlaczu, który ma 40% rozdzielczości obrazu w pionie i poziomie rzeczywistego ekranu.

DOWNSCALE_45

Identyfikator zmiany: 189969782
Stan domyślny: wyłączona w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 45% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DOWNSCALE_50

Identyfikator zmiany: 176926741
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na wyświetlaczu mającym 50% rozdzielczości pionowego i poziomego ekranu rzeczywistego.

DOWNSCALE_55

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

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 55% rozdzielczości obrazu w pionie i poziomie rzeczywistego ekranu.

DOWNSCALE_60

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

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na wyświetlaczu, który ma 60% rozdzielczości obrazu w pionie i poziomie rzeczywistego wyświetlacza.

DOWNSCALE_65

Identyfikator zmiany: 189969744
Stan domyślny: wyłączona w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 65% rozdzielczości obrazu w pionie i poziomie rzeczywistego wyświetlacza.

DOWNSCALE_70

Identyfikator zmiany: 176926829
Stan domyślny: wyłączona w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 70% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DOWNSCALE_75

Identyfikator zmiany: 189969779
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 75% rozdzielczości pionowego i poziomego ekranu rzeczywistego.

DOWNSCALE_80

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

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na wyświetlaczu, który ma 80% rozdzielczości rzeczywistego wyświetlacza w pionie i poziomie.

DOWNSCALE_85

Identyfikator zmiany: 189969734
Stan domyślny: wyłączona w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 85% rozdzielczości pionowego i poziomego ekranu rzeczywistego.

DOWNSCALE_90

Identyfikator zmiany: 182811243
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Jeśli dodatkowo włączona jest opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji zakładanie, że działa na ekranie, który ma 90% rozdzielczości pionowego i poziomego ekranu rzeczywistego.

DUMP_IGNORES_SPECIAL_ARGS

Identyfikator zmiany: 149254050
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowsze wersje funkcja dump(String, FileDescriptor, PrintWriter, String[]) nie jest wywoływana, jeśli funkcja dumpsys activity jest wywoływana z pewnymi specjalnymi argumentami.

DYNAMIC_RECEIVER_EXPLICIT_EXPORT_REQUIRED

Identyfikator zmiany: 161145287
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, aplikacja musi bezpośrednio ustawić Context.RECEIVER_EXPORTED lub Context.RECEIVER_NOT_EXPORTED podczas rejestrowania odbiornika niechronionej transmisji w kodzie.

Więcej informacji znajdziesz w sekcji na temat bezpieczniejszego eksportu odbiorców zarejestrowanych na podstawie kontekstu.

ENABLE_PENDING_INTENT_BAL_OPTION

Identyfikator zmiany: 192341120
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego chroni PendingIntent przed nadużyciami do uruchamiania aktywności w tle.

ENABLE_SIMPLIFIED_DARK_MODE

Identyfikator zmiany: 214741472
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowsze wersje pozwalają treściom z internetu na stosowanie jasnego lub ciemnego stylu zależnego od motywu aplikacji, a komponent WebView próbuje przyciemniać treści z internetu przez przyciemnianie algorytmiczne w stosownych przypadkach. Więcej informacji znajdziesz w sekcji setAlgorithmicDarkeningAllowed(boolean).

ENABLE_TOUCH_OPAQUE_ACTIVITIES

Identyfikator zmiany: 194480991
Stan domyślny: włączony w przypadku wszystkich aplikacji.

W przypadku aplikacji działających na Androidzie 13 (poziom interfejsu API 33) lub nowszym aktywności działania wykorzystują wszystkie dotknięcia w ramach swoich działań.

ENABLE_USE_EXACT_ALARM

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

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowsze wersje umożliwia niektórym rodzajom aplikacji używanie Manifest.permission.USE_EXACT_ALARM do ustawiania alarmów precyzyjnych.

ENFORCE_INTENTS_TO_MATCH_INTENT_FILTERS

Identyfikator zmiany: 161252188
Stan domyślny: włączony w przypadku wszystkich aplikacji.

Komponenty przestaną otrzymywać intencje od zewnętrznych elementów wywołujących, które nie pasują do zadeklarowanych filtrów intencji. Gdy aplikacja zarejestruje wyeksportowany komponent w pliku manifestu i doda filtr intencji, komponent może być uruchamiany przez dowolną intencję, nawet taką, która nie pasuje do filtra intencji. Okazało się, że wielu deweloperów uważa to za sprzeczne z intuicją. W pewnych okolicznościach bez sprawdzenia intencji przy uruchamianiu komponentu może to umożliwić aplikacjom innych firm aktywowanie funkcji tylko do użytku wewnętrznego.

ENFORCE_STRICT_QUERY_BUILDER

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

Gdy ta opcja jest włączona, SQLiteQueryBuilder weryfikuje wszystkie wybrane zapytania w usłudze CalendarProvider2 pod kątem szkodliwych argumentów.

FORCE_DISABLE_HEVC_SUPPORT

Identyfikator zmiany: 174227820
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Wymuszaj wyłączenie obsługi multimediów HEVC przez aplikację. Aplikacje powinny zadeklarować w pliku manifestu obsługiwane możliwości związane z multimediami, ale za pomocą tej flagi można wymusić brak obsługi HEVC, dlatego wymuszanie transkodowania podczas uzyskiwania dostępu do multimediów zakodowanych w HEVC. Ustawienie tej flagi zastępuje wszystkie domyślne ustawienia systemu operacyjnego dla aplikacji. Domyślnie jest wyłączona, co oznacza, że pierwszeństwo mają ustawienia domyślne systemu operacyjnego. Jeśli włączona jest zarówno ta flaga, jak i FORCE_ENABLE_HEVC_SUPPORT, system operacyjny ignoruje obie flagi.

FORCE_ENABLE_HEVC_SUPPORT

Identyfikator zmiany: 174228127
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Wymuś włączenie obsługi funkcji multimediów HEVC w aplikacji. Aplikacje powinny zadeklarować obsługiwane możliwości multimediów w pliku manifestu, ale tej flagi można użyć do wymuszenia w aplikacji obsługi HEVC, dzięki czemu unikniesz transkodowania podczas korzystania z multimediów zakodowanych w HEVC. Ustawienie tej flagi zastępuje wszystkie domyślne ustawienia na poziomie systemu operacyjnego dla aplikacji. Domyślnie jest wyłączona, co oznacza, że pierwszeństwo mają ustawienia domyślne systemu operacyjnego. Jeśli włączona jest zarówno ta flaga, jak i zasada FORCE_DISABLE_HEVC_SUPPORT, system operacyjny ignoruje obie flagi.

FORCE_NON_RESIZE_APP

Identyfikator zmiany: 181136395
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

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

FORCE_RESIZE_APP

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

Wymusza zmianę rozmiaru pakietów, do których jest stosowany. Zmiana rozmiaru jest dozwolona tylko w trybie wyświetlania okien na pełnym ekranie. Aplikacja nie wymusza jednak przejścia w tryb wielu okien z możliwością zmiany rozmiaru.

GET_API_SIGNATURES_FROM_UICC_PORT_INFO

Identyfikator zmiany: 202110963
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowsze ustawienia karty SIM mogą mieć aktywnych kilka identyfikatorów ICCID jednocześnie. Tę funkcję zapewnia wiele włączonych profili (Multiple Enabled Profiles (MEP).

GWP_ASAN

Identyfikator zmiany: 135634846
Stan domyślny: wyłączona w przypadku wszystkich aplikacji.

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

Więcej informacji o korzystaniu z GWP-ASan znajdziesz w przewodniku GWP-ASan.

ICC_CLOSE_CHANNEL_EXCEPTION_ON_FAILURE

Identyfikator zmiany: 208739934
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego w przypadku niepowodzenia operacji zamknięcia kanału ICC jest teraz zgłaszany wyjątek.

MEDIA_CONTROL_SESSION_ACTIONS

Identyfikator zmiany: 203800354
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego ustawienia sterowania multimediami oparte na powiadomieniach Notification.MediaStyle zawierają teraz działania na podstawie PlaybackState sesji multimediów, a nie działań powiadomienia.

Więcej informacji o tej zmianie znajdziesz w sekcji na stronie Zmiany w działaniu Androida 13 dotyczącej zmian opcji sterowania multimediami.

NATIVE_HEAP_ZERO_INIT

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

Włącz automatyczne inicjowanie bez inicjowania natywnych alokacji pamięci sterty.

NATIVE_MEMTAG_ASYNC

Identyfikator zmiany: 135772972
Stan domyślny: wyłączona 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 rozszerzenie ARM Memory Tagging Extension (MTE).

NATIVE_MEMTAG_SYNC

Identyfikator zmiany: 177438394
Stan domyślny: wyłączony 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 rozszerzenie ARM Memory Tagging Extension (MTE). Jeśli włączona jest zarówno zasada NATIVE_MEMTAG_ASYNC, jak i ta opcja, ta opcja ma pierwszeństwo, a MTE jest włączone w trybie SYNC.

NOTIFICATION_LOG_ASSISTANT_CANCEL

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

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego umożliwia słuchaczom zrozumienie konkretnego powodu anulowania powiadomień przez asystenta, zamiast używać bardziej ogólnego atrybutu REASON_LISTENER_CANCEL.

NOTIFICATION_PERM_CHANGE_ID

Identyfikator zmiany: 194833441
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego włącza ono zmiany w działaniu związane z uprawnieniami czasu działania do wyświetlania powiadomień.

Aby dowiedzieć się więcej o tej zmianie, przeczytaj stronę o nowych uprawnieniach w czasie działania powiadomień.

NOTIFICATION_TRAMPOLINE_BLOCK_FOR_EXEMPT_ROLES

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

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego, Activity zaczyna od odbiorników lub usług w odpowiedzi na powiadomienia i kliknięcia powiadomień są blokowane ze względu na wygodę użytkowników, a także ze względu na wydajność w przypadku użytkowników, którzy wcześniej zostali zwolnieni z roli (przeglądarki).

OVERRIDABLE_COMPONENT_CALLBACKS

Identyfikator zmiany: 193247900
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) i nowszego, registerComponentCallbacks(ComponentCallbacks) dodaje do interfejsu Activity lub ContextWrapper.getBaseContext() funkcję ComponentCallbacks, zamiast dodawać ją zawsze do getApplicationContext().

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

Identyfikator zmiany: 191513214
Stan domyślny: wyłączony w przypadku wszystkich aplikacji.

Gdy ta opcja jest włączona, ten identyfikator zmiany wymusza, aby stosowane przez niego pakiety ignorowały bieżącą wartość android:resizeableActivity oraz docelowy pakiet SDK o wartości równej lub mniejszej od M oraz uznają aktywność za niemożliwą do zmiany rozmiaru. W tym przypadku wartość obrotu i przycięcia kamery zależy tylko od wymaganej kompensacji, biorąc pod uwagę aktualną obrót wyświetlacza.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

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

Gdy ta opcja jest włączona, ten identyfikator zmiany wymusza na pakietach, które są stosowane, do zastąpienia domyślnego zachowania kamery oraz przycinania i zawsze zwracania wartości CaptureRequest.SCALER_ROTATE_AND_CROP_NONE. Działanie domyślne oraz wszystkie możliwe kombinacje zastąpień zostały omówione w tabeli poniżej.

OVERRIDE_MIN_ASPECT_RATIO

Identyfikator zmiany: 174042980
Stan domyślny: wyłączony 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 stosowanie tych minimalnych formatów obrazu:

Po włączeniu tej zmiany w przypadku pakietu aplikacji minimalny współczynnik proporcji podany w pliku manifestu aplikacji zostanie zastąpiony największym włączonym współczynnikiem, chyba że wartość w pliku manifestu aplikacji jest wyższa.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

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

Jeśli dodatkowo włączona jest opcja OVERRIDE_MIN_ASPECT_RATIO, włączenie tej zmiany w pakiecie powoduje ustawienie minimalnego współczynnika proporcji działania na dużą wartość zdefiniowaną przez OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

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

Jeśli dodatkowo włączona jest opcja OVERRIDE_MIN_ASPECT_RATIO, włączenie tej zmiany dla pakietu powoduje ustawienie minimalnego współczynnika proporcji działania na średnią wartość określoną przez OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

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

Jeśli dodatkowo włączona jest właściwość OVERRIDE_MIN_ASPECT_RATIO, ta zmiana ogranicza wszelkie inne zmiany, które wymuszają minimalny współczynnik proporcji działania do określonej wartości, np. OVERRIDE_MIN_ASPECT_RATIO_LARGE lub OVERRIDE_MIN_ASPECT_RATIO_MEDIUM, do aktywności o orientacji pionowej.

RATE_LIMIT_TOASTS

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

Umożliwia ograniczenie liczby wywołań Toast.show(), aby zapobiec nadmiernemu obciążeniu użytkownika zbyt dużą liczbą powiadomień w ograniczonym czasie. Każda próba wyświetlenia większej liczby powiadomień niż dozwolona w określonym przedziale czasu powoduje odrzucenie komunikatu.

REQUEST_LISTENING_MUST_MATCH_PACKAGE

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

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego wywołanie metody TileService.requestListeningState(Context, ComponentName) sprawdza, czy pakiet wywołujący (UID) jest zgodny z pakietem docelowym ComponentName. System sprawdza też, czy użyty kontekst może podejmować działania w imieniu bieżącego użytkownika.

RETURN_ADVANCED_VIDEO_PROFILES

Identyfikator zmiany: 206033068
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego określa rodzaj profili wideo zwracanych przez getAll(String, int).

SHOULD_RESOLVE_PORT_INDEX_FOR_APPS

Identyfikator zmiany: 224562872
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego, karty SIM mogą włączać wiele włączonych profili (MEP) na różnych portach. Aby zachować zgodność wsteczną z aplikacjami operatora, gdy aplikacja kierowana na interfejs API na poziomie 32 lub niższym wywoła switchToSubscription lub pobierze interfejsy API bez określenia indeksu portów, system zachowa dotychczasowe zachowanie, zawsze używając indeksu portu 0, nawet jeśli samo urządzenie ma włączony protokół MEP eUICC.

SWITCH_WITHOUT_PORT_INDEX_EXCEPTION_ON_DISABLE

Identyfikator zmiany: 218393363
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego system zgłasza wyjątek za każdym razem, gdy funkcja switchToSubscription() zostanie wywołana bez portIndex w celu wyłączenia subskrypcji.

THROW_ON_INVALID_PRIORITY_VALUE

Identyfikator zmiany: 140852299
Stan domyślny: włączona w przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) i nowszego system zgłasza wyjątek, gdy aplikacja podaje nieprawidłową wartość priorytetu za pomocą JobInfo.Builder.setPriority(int). Starsze aplikacje mogą nieprawidłowo używać interfejsu API, więc wywołanie dyskretne zakończy się niepowodzeniem, jeśli nadal będą go używać.

USE_EXPERIMENTAL_COMPONENT_ALIAS

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

Gdy ta opcja jest włączona, system zezwala pakietowi „android” na używanie aliasów komponentów.