Zmiany w systemie sprawdzania zgodności (Android 13)

Rysunek 1. Na ekranie Zmiany zgodności aplikacji w opcjach programisty znajdziesz listę zmian, które możesz włączyć lub wyłączyć.

Na tej stronie opisujemy zmiany, które można włączać i wyłączać, a które są częścią platformy zgodności w Androidzie 13 (poziom API 33). Korzystaj z tej listy w połączeniu z opcjami programisty i poleceniami ADB, aby testować i debugować aplikację podczas przygotowywania jej do obsługi Androida 13.

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

  • Testuj zmiany kierowane bez faktycznej zmiany parametru targetSdkVersion aplikacji. Za pomocą przełączników możesz wymusić włączenie określonych zmian w zachowaniu ukierunkowanym, aby ocenić ich wpływ na dotychczasową aplikację.
  • Skup się w testach tylko na konkretnych zmianach. Zamiast wprowadzać wszystkie zmiany jednocześnie, możesz wyłączyć wszystkie zmiany kierowane z wyjątkiem tych, które chcesz przetestować.
  • Zarządzanie przełącznikami za pomocą adb Za pomocą poleceń adb możesz włączać i wyłączać zmiany, które można przełączać, w automatycznym środowisku testowym.
  • Szybsze debugowanie dzięki standardowym identyfikatorom zmian Każda zmiana, którą można włączyć lub wyłączyć, ma unikalny identyfikator i nazwę, które możesz wykorzystać do szybkiego debugowania przyczyny głównej w danych wyjściowych 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 systemie sprawdzania zgodności

Lista w tej sekcji zawiera zmiany, które można włączać i wyłączać, a które są uwzględnione w ramach zgodności w Androidzie 13.

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

Zmiany, które można włączać i wyłączać w systemie sprawdzania zgodności w Androidzie 13

ACCOUNT_ACCESS_CHECK_CHANGE_ID

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowsze wersje umożliwia sprawdzanie dostępu do konta dla wywołującego identyfikatora UID we wszystkich interfejsach API związanych z synchronizacją.

ALLOW_COPY_SOLID_COLOR_VIEW

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) lub nowszego umożliwia aplikacji otrzymywanie wywołania zwrotnego SplashScreen.OnExitAnimationListener.onSplashScreenExit(SplashScreenView), nawet jeśli ekran powitalny wyświetla tylko jednolity kolor.

ALLOW_SECURE_ACTIVITY_DISPLAY_ON_REMOTE_DEVICE

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowszych zezwala na wyświetlanie bezpiecznej aktywności na urządzeniach zdalnych, jeśli jest to wymagane.

BORINGLAYOUT_FALLBACK_LINESPACING

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowsze wersje włącza rezerwowe odstępy między wierszami tekstu (wysokość wiersza) dla BoringLayout.

CALL_REDIRECTION_AUDIO_MODES

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowsze wersje umożliwia korzystanie z trybów audio do przekierowywania dźwięku połączeń.

CAMERA_MIC_INDICATORS_NOT_PRESENT

Identyfikator zmiany: 162547999
Stan domyślny: wyłączony dla wszystkich aplikacji.

Wskazuje, że to urządzenie obsługuje wskaźniki kamery i mikrofonu. Wartość false, jeśli jest obecna, ponieważ metoda CompatChanges#isChangeEnabled zwraca true, jeśli identyfikator zmiany nie jest obecny.

CLEAR_SHOW_FORCED_FLAG_WHEN_LEAVING

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowszych zapobiega działaniu flagi SHOW_FORCED, chyba że wywołujący jest obecnie aktywny.

DEFER_BOOT_COMPLETED_BROADCAST_CHANGE_ID

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) lub nowszego odraczaj transmisje LOCKED_BOOT_COMPLETEDBOOT_COMPLETED do momentu pierwszego uruchomienia dowolnego procesu w identyfikatorze UID.

DISALLOW_DEADLINES_FOR_PREFETCH_JOBS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) i nowsze uniemożliwia ustawienie terminu (za pomocą JobInfo.Builder.setOverrideDeadline(long)) dla zadań wstępnego pobierania (JobInfo.Builder.setPrefetch(boolean)). Zadania wstępnego pobierania mają być wykonywane tuż przed następnym uruchomieniem aplikacji, dlatego nie mogą mieć terminów. System nie odrzuca ani nie anuluje jednak żadnych wcześniej zaplanowanych zadań wstępnego pobierania z terminem.

Aplikacja nie może utrzymywać stale zaplanowanego zadania wstępnego pobierania z terminem. Zadania wstępnego pobierania z terminem będą wykonywane, a aplikacje objęte tym ograniczeniem nie będą mogły planować nowych zadań wstępnego pobierania z terminem. Jeśli zadanie zostanie przełożone przez podanie true przy użyciu wartości zwracanej przez JobService.jobFinished(JobParameters, boolean) lub JobService.onStopJob(JobParameters), termin zostanie usunięty. Zadania okresowe wymagają spełnienia wszystkich ograniczeń, więc te ograniczenia nie mają wpływu na ich terminy.

DOWNSCALED

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

Ta zmiana jest punktem kontrolnym wszystkich zmian dotyczących zmniejszania bufora w poszczególnych aplikacjach. Włączenie tej zmiany umożliwia zastosowanie tych współczynników skalowania:

Gdy ta zmiana jest włączona w przypadku pakietu aplikacji, rozmiar aplikacji jest wymuszany do najwyższego włączonego współczynnika skalowania. Na przykład jeśli włączone są zarówno 80%, jak i 70% (DOWNSCALE_80DOWNSCALE_70), używana jest wartość 80%.

DOWNSCALE_30

Identyfikator zmiany: 189970040
Stan domyślny: wyłączony dla wszystkich aplikacji.

Jeśli opcja DOWNSCALED jest również włączona, wprowadzenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej stanowiącej 30% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_35

Identyfikator zmiany: 189969749
Stan domyślny: wyłączony dla wszystkich aplikacji.

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 35% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_40

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

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej stanowiącej 40% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_45

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

Jeśli opcja DOWNSCALED jest również włączona, wprowadzenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej stanowiącej 45% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_50

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

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 50% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_55

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

Jeśli opcja DOWNSCALED jest również włączona, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 55% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_60

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

Jeśli opcja DOWNSCALED jest również włączona, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 60% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_65

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

Jeśli opcja DOWNSCALED jest również włączona, wprowadzenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 65% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_70

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

Jeśli opcja DOWNSCALED jest również włączona, wprowadzenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 70% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_75

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

Jeśli opcja DOWNSCALED jest również włączona, wprowadzenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 75% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_80

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

Jeśli opcja DOWNSCALED jest również włączona, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 80% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_85

Identyfikator zmiany: 189969734
Stan domyślny: wyłączony dla wszystkich aplikacji.

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 85% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_90

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

Jeśli funkcja DOWNSCALED jest również włączona, włączenie tej zmiany w przypadku pakietu wymusza założenie, że aplikacja działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 90% rozdzielczości rzeczywistego wyświetlacza.

DUMP_IGNORES_SPECIAL_ARGS

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

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

DYNAMIC_RECEIVER_EXPLICIT_EXPORT_REQUIRED

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

Gdy to ustawienie jest włączone, aplikacja musi jawnie ustawić wartość Context.RECEIVER_EXPORTED lub Context.RECEIVER_NOT_EXPORTED podczas rejestrowania odbiorcy niechronionej transmisji w kodzie.

Więcej informacji znajdziesz w sekcji Bezpieczniejsze eksportowanie odbiorców zarejestrowanych w kontekście.

ENABLE_PENDING_INTENT_BAL_OPTION

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowszych chroni PendingIntent przed nadużyciami związanymi z uruchamianiem aktywności w tle.

ENABLE_SIMPLIFIED_DARK_MODE

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) lub nowszego umożliwia stosowanie jasnego lub ciemnego stylu w treściach internetowych zgodnie z motywem aplikacji oraz próby przyciemniania treści internetowych przez WebView za pomocą algorytmicznego przyciemniania w odpowiednich przypadkach. Więcej informacji znajdziesz w artykule 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 (API na poziomie 33) lub nowszym działania zużywają wszystkie dotknięcia w zakresie zadania.

ENABLE_USE_EXACT_ALARM

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) i nowsze wersje umożliwia określonym rodzajom aplikacji używanie Manifest.permission.USE_EXACT_ALARM do planowania alarmów precyzyjnych.

ENFORCE_INTENTS_TO_MATCH_INTENT_FILTERS

Change ID: 161252188
Default State: Włączono dla wszystkich aplikacji.

Komponenty przestaną otrzymywać intencje od zewnętrznych 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 zostać uruchomiony przez dowolną intencję, nawet taką, która nie pasuje do filtra intencji. Okazuje się, że wielu deweloperów uważa to za sprzeczne z intuicją. Jeśli intencja nie jest sprawdzana podczas uruchamiania komponentu, w niektórych przypadkach może to umożliwić aplikacjom innych firm wywoływanie funkcji przeznaczonych tylko do użytku wewnętrznego.

ENFORCE_STRICT_QUERY_BUILDER

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

Gdy ta opcja jest włączona, SQLiteQueryBuilder weryfikuje wszystkieCalendarProvider2 wybory zapytań pod kątem złośliwych argumentów.

FORCE_DISABLE_HEVC_SUPPORT

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

Wymuś wyłączenie obsługi HEVC w aplikacji. Aplikacje powinny deklarować obsługiwane funkcje multimedialne w pliku manifestu, ale ta flaga może wymusić, aby aplikacja nie obsługiwała HEVC, a tym samym wymusić transkodowanie podczas uzyskiwania dostępu do multimediów zakodowanych w HEVC. Ustawienie tego flagi zastępuje wszelkie domyślne ustawienia systemu operacyjnego w przypadku aplikacji. Domyślnie jest wyłączona, co oznacza, że pierwszeństwo mają ustawienia domyślne systemu operacyjnego. Jeśli ta flaga i flaga FORCE_ENABLE_HEVC_SUPPORT są włączone, system operacyjny ignoruje obie flagi.

FORCE_ENABLE_HEVC_SUPPORT

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

Wymuszanie włączenia obsługi formatu HEVC w aplikacji. Aplikacje powinny deklarować obsługiwane funkcje multimedialne w pliku manifestu, ale ta flaga może służyć do wymuszania obsługi formatu HEVC w aplikacji, a tym samym do unikania transkodowania podczas uzyskiwania dostępu do multimediów zakodowanych w tym formacie. Ustawienie tego flagi zastępuje wszelkie domyślne ustawienia aplikacji na poziomie systemu operacyjnego. Domyślnie jest wyłączona, co oznacza, że pierwszeństwo mają ustawienia domyślne systemu operacyjnego. Jeśli ta flaga i flaga FORCE_DISABLE_HEVC_SUPPORT są włączone, system operacyjny ignoruje obie flagi.

FORCE_NON_RESIZE_APP

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

Wymusza, aby pakiety, do których jest stosowany, nie miały możliwości zmiany rozmiaru.

FORCE_RESIZE_APP

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

Wymusza zmianę rozmiaru pakietów, do których jest stosowany. Zezwalamy na zmianę rozmiaru tylko w trybie pełnoekranowym, ale nie wymuszamy na aplikacji przejścia do trybu wielu okien z możliwością zmiany rozmiaru.

GET_API_SIGNATURES_FROM_UICC_PORT_INFO

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowsze umożliwia to, że karta SIM może mieć więcej niż jeden aktywny numer ICCID jednocześnie. Obsługuje to funkcja MEP (Multiple Enabled Profiles).

GWP_ASAN

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

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

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

ICC_CLOSE_CHANNEL_EXCEPTION_ON_FAILURE

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowsze wersje wyjątek jest teraz zgłaszany za każdym razem, gdy operacja zamykania kanału ICC nie powiedzie się.

MEDIA_CONTROL_SESSION_ACTIONS

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) lub nowszego elementy sterujące multimediami oparte na powiadomieniach Notification.MediaStyle mają teraz działania oparte na PlaybackState sesji multimedialnej, a nie na działaniach powiadomienia.

Więcej informacji o tej zmianie znajdziesz w sekcji na stronie dotyczącej zmian w zachowaniu Androida 13, która opisuje zmiany w elementach sterujących multimediami.

NATIVE_HEAP_ZERO_INIT

Zmień identyfikator: 178038272
Stan domyślny: wyłączony dla wszystkich aplikacji.

Włącz automatyczne zerowanie pamięci sterty natywnej.

NATIVE_MEMTAG_ASYNC

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

Włącz asynchroniczne sprawdzanie tagów pamięci (ASYNC) w tym procesie. 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 dla wszystkich aplikacji.

Włącza w tym procesie synchroniczne sprawdzanie tagu pamięci (SYNC). Ta flaga ma wpływ tylko na sprzęt obsługujący rozszerzenie ARM Memory Tagging Extension (MTE). Jeśli zarówno parametr NATIVE_MEMTAG_ASYNC, jak i ta opcja są włączone, ta opcja ma pierwszeństwo i MTE jest włączony w trybie SYNC.

NOTIFICATION_LOG_ASSISTANT_CANCEL

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowsze wersje umożliwia odbiorcom zrozumienie bardziej szczegółowego powodu anulowania powiadomień przez asystenta zamiast korzystania z bardziej ogólnego REASON_LISTENER_CANCEL.

NOTIFICATION_PERM_CHANGE_ID

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) i nowsze wersje włącza zmiany w sposobie działania związane z uprawnieniami do wyświetlania powiadomień w zaufanym środowisku wykonawczym.

Więcej informacji o tej zmianie znajdziesz na stronie poświęconej nowemu uprawnieniu do powiadomień w czasie działania.

NOTIFICATION_TRAMPOLINE_BLOCK_FOR_EXEMPT_ROLES

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) lub nowszego Activity zaczyna pochodzić z odbiorników transmisji lub usług w odpowiedzi na kliknięcia powiadomień i działań powiadomień. Z powodów związanych z UX i wydajnością kliknięcia są blokowane w przypadku podmiotów, które wcześniej były zwolnione z tego obowiązku (przeglądarki).

OVERRIDABLE_COMPONENT_CALLBACKS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego funkcja registerComponentCallbacks(ComponentCallbacks) dodaje ComponentCallbacks do Activity lub ContextWrapper.getBaseContext() zamiast zawsze dodawać do getApplicationContext().

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

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

Po włączeniu tego identyfikatora zmiany pakiety, do których jest on stosowany, ignorują bieżącą wartość android:resizeableActivity, a także pakiet SDK docelowy równy M lub starszy i traktują aktywność jako niemożliwą do zmiany rozmiaru. W takim przypadku wartość obrotu i przycięcia kamery będzie zależeć tylko od wymaganej kompensacji z uwzględnieniem bieżącego obrotu wyświetlacza.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

Zmień identyfikator: 189229956
Stan domyślny: wyłączony dla wszystkich aplikacji.

Po włączeniu tego identyfikatora zmiany pakiety, do których jest on stosowany, wymuszają zastąpienie domyślnego zachowania obracania i przycinania obrazu z kamery i zawsze zwracają wartość CaptureRequest.SCALER_ROTATE_AND_CROP_NONE. Domyślne działanie 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 dla wszystkich aplikacji.

Ta zmiana jest punktem kontrolnym wszystkich zmian, które wymuszają określony minimalny współczynnik proporcji. Włączenie tej zmiany umożliwia stosowanie tych minimalnych współczynników proporcji:

Gdy ta zmiana zostanie włączona w przypadku pakietu aplikacji, minimalne proporcje podane w manifeście aplikacji zostaną zastąpione największymi włączonymi proporcjami, chyba że wartość w manifeście aplikacji jest wyższa.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

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

Gdy włączona jest też opcja OVERRIDE_MIN_ASPECT_RATIO, włączenie tej zmiany w przypadku pakietu ustawia minimalny współczynnik proporcji aktywności na dużą wartość określoną przez OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

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

Jeśli włączona jest też opcja OVERRIDE_MIN_ASPECT_RATIO, włączenie tej zmiany w przypadku pakietu ustawia minimalny współczynnik proporcji aktywności 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.

Gdy włączona jest też opcja OVERRIDE_MIN_ASPECT_RATIO, ta zmiana ogranicza inne zmiany, które wymuszają minimalny współczynnik proporcji aktywności do określonej wartości, np. OVERRIDE_MIN_ASPECT_RATIO_LARGE i OVERRIDE_MIN_ASPECT_RATIO_MEDIUM, do aktywności, które mają też orientację pionową.

RATE_LIMIT_TOASTS

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

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

REQUEST_LISTENING_MUST_MATCH_PACKAGE

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego wywołanie TileService.requestListeningState(Context, ComponentName) sprawdza, czy pakiet wywołujący (UID) i pakiet docelowy ComponentName są zgodne. System sprawdza też, czy używany kontekst może wykonywać działania w imieniu bieżącego użytkownika.

RETURN_ADVANCED_VIDEO_PROFILES

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) i nowsze ten parametr określa rodzaje profili wideo zwracanych przez getAll(String, int).

SHOULD_RESOLVE_PORT_INDEX_FOR_APPS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) i nowsze wersje umożliwia kartom SIM włączanie wielu aktywnych profili (MEP) na różnych portach. Aby zachować zgodność wsteczną w przypadku aplikacji operatorów, gdy aplikacja kierowana na interfejs API na poziomie 32 lub niższym wywołuje interfejsy API switchToSubscription lub pobierania bez określania indeksu portu, system zachowuje dotychczasowe działanie, zawsze używając indeksu portu 0, nawet jeśli na urządzeniu jest włączona karta eUICC z wieloma profilami.

SWITCH_WITHOUT_PORT_INDEX_EXCEPTION_ON_DISABLE

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

W przypadku aplikacji kierowanych na Androida 13 (API na poziomie 33) lub nowszego system zgłasza wyjątek, gdy wywoływana jest funkcja switchToSubscription() bez funkcji portIndex, aby wyłączyć subskrypcję.

THROW_ON_INVALID_PRIORITY_VALUE

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

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

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.