Zmiany w systemie sprawdzania zgodności (Android 13)

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

Na tej stronie opisano zmiany, które można włączyć lub wyłączyć w ramach ramy zgodności w Androidzie 13 (poziom API 33). Korzystaj z tej listy w połączeniu z opcjami dla deweloperów i poleceniami ADB, aby testować i debugować aplikację podczas przygotowywania jej do obsługi i ustawienia jako docelowej wersji Android 13.

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

  • Testuj zmiany docelowe bez faktycznej zmiany wartości targetSdkVersion aplikacji. Za pomocą przełączników możesz wymusić włączenie określonych zmian w docelowanym zachowaniu, aby ocenić ich wpływ na dotychczasową aplikację.
  • Skup się na testowaniu tylko konkretnych zmian. Zamiast modyfikować wszystkie zmiany docelowe jednocześnie, możesz wyłączyć wszystkie zmiany docelowe oprócz tych, które chcesz przetestować.
  • Zarządzaj przełącznikami za pomocą adb Za pomocą poleceń adb możesz włączać i wyłączać zmiany 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órych możesz używać do szybkiego debugowania przyczyny błędu w wyprowadzaniu z dziennika.

Szczegółowe informacje o używaniu narzędzi w przypadku każdego z tych zastosowań znajdziesz w artykule Narzędzia dotyczące ram kompatybilności.

Zmiany zachowania uwzględnione w systemie sprawdzania zgodności

Lista w tej sekcji opisuje zmiany, które można włączyć lub wyłączyć, a które są uwzględnione w ramach kompatybilności w Androidzie 13.

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

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

ACCOUNT_ACCESS_CHECK_CHANGE_ID

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

W przypadku aplikacji kierowanych na Androida 13 (interfejs API na poziomie 33) lub nowszego umożliwia sprawdzanie dostępu do konta dla identyfikatora UID wywołującego w przypadku wszystkich interfejsów 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 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego umożliwia aplikacji otrzymywanie wywołania zwrotnego SplashScreen.OnExitAnimationListener.onSplashScreenExit(SplashScreenView), nawet jeśli ekran powitalny zawiera 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 (poziom API 33) lub nowszego.

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego umożliwia wyświetlanie bezpiecznej aktywności na urządzeniach zdalnych (w razie potrzeby).

BORINGLAYOUT_FALLBACK_LINESPACING

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego włącza użycie zapasowego odstępu między wierszami tekstu (wysokość wiersza) w przypadku BoringLayout.

CALL_REDIRECTION_AUDIO_MODES

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego umożliwia użycie trybów audio do przekierowywania dźwięku połączeń.

CAMERA_MIC_INDICATORS_NOT_PRESENT

Identyfikator zmiany: 162547999
Stan domyślny: wyłączone we wszystkich aplikacjach.

Wskaźnik, że urządzenie obsługuje wskaźniki kamery i mikrofonu. Jeśli jest obecny, zwraca wartość false, ponieważ metoda CompatChanges#isChangeEnabled zwraca wartość true, jeśli identyfikator zmiany jest nieobecny.

CLEAR_SHOW_FORCED_FLAG_WHEN_LEAVING

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego flaga SHOW_FORCED nie ma żadnego wpływu, chyba że wywołujący jest aktualnie w stanie skupienia.

DEFER_BOOT_COMPLETED_BROADCAST_CHANGE_ID

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

W przypadku aplikacji kierowanych na Androida 13 (poziom interfejsu API 33) lub nowszego opóźnij przesyłanie pakietów LOCKED_BOOT_COMPLETEDBOOT_COMPLETED do momentu rozpoczęcia pierwszego procesu w identyfikatorze UID.

DISALLOW_DEADLINES_FOR_PREFETCH_JOBS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego nie zezwala na określanie terminu (za pomocą funkcji JobInfo.Builder.setOverrideDeadline(long)) dla zadań wstępnych (JobInfo.Builder.setPrefetch(boolean)). Zadania wstępnej obsługi mają być wykonywane w pobliżu następnego uruchomienia aplikacji, dlatego nie mogą mieć terminów. System nie zwalnia 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 wykonania będą wykonywane, a aplikacje objęte tą restrykcją nie będą mogły planować nowych zadań wstępnego pobierania z terminem wykonania. Jeśli zadanie zostanie przesunięte w czasie, podając wartość true za pomocą wartości zwracanej z JobService.jobFinished(JobParameters, boolean) lub JobService.onStopJob(JobParameters), termin ulega anulowaniu. 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łączone we wszystkich aplikacjach.

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

Gdy ta zmiana zostanie włączona w przypadku pakietu aplikacji, aplikacja zostanie wymuszająco przeskalowana do najwyższego, włączonego współczynnika skalowania. Na przykład 80% jest używane, jeśli włączone są ustawienia 80% i 70% (DOWNSCALE_80 i DOWNSCALE_70).

DOWNSCALE_30

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

Jeśli włączona jest też opcja DOWNSCALED, w przypadku pakietu z taką zmianą aplikacja zakłada, że działa na wyświetlaczu o 30% mniejszej rozdzielczości w orientacji pionowej i poziomej w porównaniu z rzeczywistą rozdzielczością.

DOWNSCALE_35

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

Jeśli włączona jest też opcja DOWNSCALED, w przypadku pakietu z tą zmianą aplikacja zakłada, że działa na wyświetlaczu o 35% mniejszej rozdzielczości w orientacji poziomej i pionowej niż rzeczywisty wyświetlacz.

DOWNSCALE_40

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

Jeśli włączysz też opcję DOWNSCALED, aplikacja będzie działać z założenia, że jest uruchomiona na wyświetlaczu o rozdzielczości w poziomie i w pionie równej 40% rzeczywistej rozdzielczości wyświetlacza.

DOWNSCALE_45

Identyfikator zmiany: 189969782
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja DOWNSCALED, w przypadku pakietu z taką zmianą aplikacja zakłada, że działa na wyświetlaczu o 45% mniejszej rozdzielczości w kierunku pionowym i poziomym niż rzeczywisty wyświetlacz.

DOWNSCALE_50

Identyfikator zmiany: 176926741
Stan domyślny: wyłączone dla wszystkich aplikacji.

Jeśli włączysz też opcję DOWNSCALED, aplikacja będzie działać z założeniem, że jest uruchomiona na wyświetlaczu o rozdzielczości w poziomie i w pionie o 50% mniejszej od rzeczywistej.

DOWNSCALE_55

Identyfikator zmiany: 189970036
Stan domyślny: Wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja DOWNSCALED, w przypadku pakietu włączona zmiana spowoduje, że aplikacja będzie zakładać, że działa na wyświetlaczu o rozdzielczości w poziomie i w pionie równej 55% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_60

Identyfikator zmiany: 176926771
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączysz też opcję DOWNSCALED, aplikacja będzie działać z założeniem, że wyświetla się na ekranie o 60% mniejszej rozdzielczości w orientacji pionowej i poziomej niż rzeczywisty ekran.

DOWNSCALE_65

Identyfikator zmiany: 189969744
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu spowoduje, że aplikacja będzie zakładać, że działa na wyświetlaczu o rozdzielczości 65% w orientacji pionowej i poziomej w porównaniu z rzeczywistą rozdzielczością.

DOWNSCALE_70

Identyfikator zmiany: 176926829
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu spowoduje, że aplikacja będzie zakładać, że działa na wyświetlaczu o rozdzielczości 70% w orientacji pionowej i poziomej w porównaniu z rzeczywistą rozdzielczością.

DOWNSCALE_75

Identyfikator zmiany: 189969779
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja DOWNSCALED, w przypadku pakietu włączona zmiana spowoduje, że aplikacja będzie zakładać, że działa na wyświetlaczu o 75% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DOWNSCALE_80

Identyfikator zmiany: 176926753
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu spowoduje, że aplikacja będzie zakładać, że działa na wyświetlaczu o 80% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DOWNSCALE_85

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

Jeśli włączona jest też opcja DOWNSCALED, w przypadku pakietu ta zmiana spowoduje, że aplikacja będzie zakładać, że działa na wyświetlaczu o 85% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DOWNSCALE_90

Identyfikator zmiany: 182811243
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu spowoduje, że aplikacja będzie zakładać, że działa na wyświetlaczu o 90% rozdzielczości pionowej i poziomej rzeczywistego wyświetlacza.

DUMP_IGNORES_SPECIAL_ARGS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego funkcja dump(String, FileDescriptor, PrintWriter, String[]) nie jest wywoływana, jeśli funkcja dumpsys activity jest wywoływana z niektórymi argumentami specjalnymi.

DYNAMIC_RECEIVER_EXPLICIT_EXPORT_REQUIRED

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

Gdy to ustawienie jest włączone, aplikacja musi wyraźnie ustawić wartość Context.RECEIVER_EXPORTED lub Context.RECEIVER_NOT_EXPORTED podczas rejestrowania odbiornika w ramach niechronionej transmisji danych w kodzie.

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

ENABLE_PENDING_INTENT_BAL_OPTION

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego chroni PendingIntent przed wykorzystywaniem do uruchamiania aktywności w tle.

ENABLE_SIMPLIFIED_DARK_MODE

Identyfikator zmiany: 214741472
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 umożliwia wyświetlanie treści w jasnym lub ciemnym motywie zgodnie z motywem aplikacji oraz próbę przyciemnienia treści w WebView za pomocą algorytmu w odpowiednich przypadkach. Więcej informacji znajdziesz na stronie setAlgorithmicDarkeningAllowed(boolean).

ENABLE_TOUCH_OPAQUE_ACTIVITIES

Identyfikator zmiany: 194480991
Stan domyślny: Włączone we wszystkich aplikacjach.

W przypadku aplikacji działających na Androidzie 13 (poziom API 33) lub nowszym czynności zużywają wszystkie dotknięcia w ramach swoich zadań.

ENABLE_USE_EXACT_ALARM

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego umożliwia niektórym aplikacjom korzystanie z funkcji Manifest.permission.USE_EXACT_ALARM do planowania precyzyjnych alarmów.

ENFORCE_INTENTS_TO_MATCH_INTENT_FILTERS

Identyfikator zmiany: 161252188
Stan domyślny: włączone 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 być uruchamiany przez dowolną intencję, nawet te, które nie pasują do filtra intencji. Wielu deweloperów uważa to za nieintuicyjne. Jeśli nie sprawdzisz intencji podczas uruchamiania komponentu, w niektórych okolicznościach aplikacje innych firm mogą wywołać funkcje przeznaczone tylko do użytku wewnętrznego.

ENFORCE_STRICT_QUERY_BUILDER

Identyfikator zmiany: 143231523
Stan domyślny: wyłączone we wszystkich aplikacjach.

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

FORCE_DISABLE_HEVC_SUPPORT

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

Wymusić wyłączenie obsługi formatu HEVC przez aplikację. Aplikacje powinny deklarować obsługiwane formaty multimediów w pliku manifestu, ale ta flaga może być używana do wymuszania w aplikacji braku obsługi HEVC, co powoduje wymuszenie transkodowania podczas uzyskiwania dostępu do multimediów zakodowanych w HEVC. Ustawienie tego parametru zastępuje wszelkie domyślne ustawienia na poziomie systemu operacyjnego dla aplikacji. Domyślnie jest ona wyłączona, co oznacza, że mają pierwszeństwo ustawienia domyślne systemu operacyjnego. Jeśli włączone są 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łączone we wszystkich aplikacjach.

Wymuszanie obsługi przez aplikację obsługiwanej przez nią funkcji multimediów HEVC. Aplikacje powinny deklarować obsługiwane funkcje multimediów w pliku manifestu, ale ta flaga może być używana do wymuszania obsługi HEVC, co pozwala uniknąć transkodowania podczas uzyskiwania dostępu do multimediów zakodowanych w HEVC. Ustawienie tego parametru zastępuje wszelkie domyślne ustawienia na poziomie systemu operacyjnego dla aplikacji. Domyślnie jest wyłączona, co oznacza, że mają zastosowanie ustawienia domyślne systemu operacyjnego. Jeśli włączone są zarówno ta flaga, jak i FORCE_DISABLE_HEVC_SUPPORT, system operacyjny ignoruje obie flagi.

FORCE_NON_RESIZE_APP

Identyfikator zmiany: 181136395
Stan domyślny: wyłączone we wszystkich aplikacjach.

Wymusza na pakietach, do których jest stosowany, niemożność zmiany rozmiaru.

FORCE_RESIZE_APP

Identyfikator zmiany: 174042936
Stan domyślny: wyłączone we wszystkich aplikacjach.

Wymusza możliwość zmiany rozmiaru pakietów, do których jest stosowany. Zezwalam na zmianę rozmiaru tylko w trybie pełnoekranowym, a nie na wymuszenie trybu wielu okien z możliwością zmiany rozmiaru.

GET_API_SIGNATURES_FROM_UICC_PORT_INFO

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego karta SIM może mieć więcej niż 1 aktywny identyfikator ICCID w tym samym czasie. Obsługa tej funkcji jest zapewniana przez funkcję wielu włączonych profili (MEP).

GWP_ASAN

Identyfikator zmiany: 135634846
Stan domyślny: wyłączone we wszystkich aplikacjach.

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

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

ICC_CLOSE_CHANNEL_EXCEPTION_ON_FAILURE

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego wyjątek jest teraz wywoływany, gdy operacja zamknięcia kanału ICC zakończy się niepowodzeniem.

MEDIA_CONTROL_SESSION_ACTIONS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego funkcje sterowania multimediami oparte na powiadomieniach Notification.MediaStyle są teraz oparte na sesji multimediów PlaybackState, a nie na działaniach powiadomienia.

Więcej informacji o tej zmianie znajdziesz w sekcji na stronie poświęconej zmianom zachowania w Androidzie 13 dotyczącym zmian w przyciskach sterujących multimediami.

NATIVE_HEAP_ZERO_INIT

Identyfikator zmiany: 178038272
Stan domyślny: wyłączone we wszystkich aplikacjach.

Włącz automatyczną zerową inicjalizację przydzielanej pamięci natywnych stosów.

NATIVE_MEMTAG_ASYNC

Identyfikator zmiany: 135772972
Stan domyślny: wyłączone we wszystkich aplikacjach.

Włącz w tym procesie asynchroniczne (ASYNC) sprawdzanie tagów pamięci. Ten parametr dotyczy tylko sprzętu obsługującego rozszerzenie Memory Tagging Extension (MTE) na ARM.

NATIVE_MEMTAG_SYNC

Identyfikator zmiany: 177438394
Stan domyślny: wyłączone we wszystkich aplikacjach.

Włącza w tym procesie synchroniczne (SYNC) sprawdzanie etykiet pamięci. Ten parametr dotyczy tylko sprzętu obsługującego rozszerzenie Memory Tagging Extension (MTE) na ARM. Jeśli zarówno parametr NATIVE_MEMTAG_ASYNC, jak i ta opcja są włączone, ta opcja ma pierwszeństwo, a MTE jest włączone w trybie synchronizacji.

NOTIFICATION_LOG_ASSISTANT_CANCEL

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego umożliwia odbiorcom zrozumienie bardziej szczegółowego powodu anulowania powiadomienia przez asystenta zamiast użycia bardziej ogólnego REASON_LISTENER_CANCEL.

NOTIFICATION_PERM_CHANGE_ID

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) i nowszych umożliwia zachowanie zgodności z zachowaniem związanym z uprawnieniami w czasie działania dotyczącymi powiadomień.

Więcej informacji o tej zmianie znajdziesz na stronie o nowym uprawnieniu do powiadomień.

NOTIFICATION_TRAMPOLINE_BLOCK_FOR_EXEMPT_ROLES

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego Activity starty pochodzące z odbiorników transmisji lub usług w odpowiedzi na powiadomienie i kliknięcia akcji powiadomienia są blokowane ze względów związanych z UX i wydajnością w przypadku posiadaczy ról, którzy byli wcześniej zwolnieni z obowiązku (przeglądarki).

OVERRIDABLE_COMPONENT_CALLBACKS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego, 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łączone we wszystkich aplikacjach.

Gdy to identyfikator zmiany jest włączony, powoduje, że pakiety, do których jest zastosowany, ignorują bieżącą wartość android:resizeableActivity oraz docelowy pakiet SDK równy lub mniejszy niż M, a aktywność jest uważana za nierozszerzalną. W tym przypadku wartość obrotu i przycięcia kamery będzie zależeć tylko od wymaganej kompensacji uwzględniającej bieżący obrót wyświetlacza.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

Identyfikator zmiany: 189229956
Stan domyślny: wyłączone we wszystkich aplikacjach.

Gdy to ustawienie jest włączone, powoduje, że pakiety, do których jest ono stosowane, zastępują domyślne zachowanie obracania i przycinania aparatu i zawsze zwracają CaptureRequest.SCALER_ROTATE_AND_CROP_NONE. Domyślne działanie wraz ze wszystkimi możliwymi kombinacjami zastąpienia zostało opisane w tabeli poniżej.

OVERRIDE_MIN_ASPECT_RATIO

Identyfikator zmiany: 174042980
Stan domyślny: wyłączone we wszystkich aplikacjach.

Ta zmiana jest bramką dla wszystkich zmian, które wymuszają określony minimalny format obrazu. Włączenie tej zmiany pozwala zastosować te minimalne proporcje:

Gdy ta zmiana zostanie włączona w przypadku pakietu aplikacji, minimalne proporcje podane w pliku manifestu zostaną zastąpione przez największe dozwolone proporcje, chyba że wartość w pliku manifestu jest większa.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

Identyfikator zmiany: 180326787
Stan domyślny: wyłączone we wszystkich aplikacjach.

Jeśli włączona jest też opcja OVERRIDE_MIN_ASPECT_RATIO, ta zmiana w przypadku pakietu powoduje ustawienie minimalnego współczynnika proporcji aktywności na dużą wartość określoną przez opcję OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

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

Gdy włączona jest również opcja OVERRIDE_MIN_ASPECT_RATIO, w przypadku pakietu zmiana ta powoduje ustawienie minimalnego współczynnika proporcji aktywności na średnią wartość określoną przez opcję OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

Identyfikator zmiany: 203647190
Stan domyślny: włączone we wszystkich aplikacjach.

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

RATE_LIMIT_TOASTS

Identyfikator zmiany: 174840628
Stan domyślny: tej zmiany nie można zmienić. Jest on rejestrowany tylko przez system sprawdzania zgodności.

Umożliwia ograniczenie liczby wywołań Toast.show(), aby nie obciążać użytkownika zbyt dużą liczbą toastów w określonym czasie. Każda próba wyświetlenia większej liczby toastów niż jest dozwolone w określonym przedziale czasu powoduje odrzucenie toastu.

REQUEST_LISTENING_MUST_MATCH_PACKAGE

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

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

RETURN_ADVANCED_VIDEO_PROFILES

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego kontroluje rodzaj profili wideo zwracanych przez getAll(String, int).

SHOULD_RESOLVE_PORT_INDEX_FOR_APPS

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego umożliwia kartom SIM włączanie wielu profili na różnych portach. Aby zachować zgodność wsteczną w przypadku aplikacji operatora, gdy aplikacja kierowana na interfejs API na poziomie 32 lub niższym wywołuje interfejs API switchToSubscription lub pobierania bez określenia indeksu portu, system zachowuje dotychczasowe zachowanie, zawsze używając indeksu portu 0, nawet jeśli na samym urządzeniu włączono MEP eUICC.

SWITCH_WITHOUT_PORT_INDEX_EXCEPTION_ON_DISABLE

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

W przypadku aplikacji kierowanych na Androida 13 (poziom API 33) lub nowszego system zgłasza wyjątek, gdy metoda switchToSubscription() jest wywoływana bez parametru 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 (poziom API 33) lub nowszego.

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

USE_EXPERIMENTAL_COMPONENT_ALIAS

Identyfikator zmiany: 196254758
Stan domyślny: wyłączone we wszystkich aplikacjach.

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