Zmiany w systemie sprawdzania zgodności (Android 16)

Rysunek 1. Na ekranie Zmiany dotyczące zgodności aplikacji w opcjach programisty znajdziesz listę zmian, które możesz przełączać.

Na tej stronie opisujemy zmiany, które można przełączać i które są częścią systemu sprawdzania zgodności w Androidzie 16 (poziom API 36). Używaj tej listy w połączeniu z opcjami programisty i poleceniami ADB, aby testować i debugować aplikację podczas przygotowywania jej do obsługi Androida 16 i kierowania na tę wersję.

Oto kilka rzeczy, które możesz zrobić za pomocą narzędzi systemu sprawdzania zgodności:

  • Testuj zmiany ukierunkowane bez faktycznej zmiany wartości targetSdkVersion aplikacji. Możesz użyć przełączników, aby wymusić włączenie określonych zmian zachowania, i ocenić ich wpływ na dotychczasową aplikację.
  • Skup się na testowaniu tylko konkretnych zmian. Zamiast wprowadzać wszystkie zmiany kierowania naraz, możesz za pomocą przełączników wyłączyć wszystkie zmiany kierowania oprócz tych, które chcesz przetestować.
  • Zarządzanie przełącznikami za pomocą adb Możesz używać poleceń adb, aby włączać i wyłączać zmiany w środowisku testów automatycznych.
  • Szybsze debugowanie dzięki standardowym identyfikatorom zmian Każda zmiana, którą można przełączać, ma unikalny identyfikator i nazwę, dzięki którym można 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 o narzędziach systemu sprawdzania zgodności.

Zmiany zachowania uwzględnione w systemie sprawdzania zgodności

Lista w tej sekcji zawiera zmiany, które można przełączać, uwzględnione w systemie sprawdzania zgodności w przypadku zmian związanych z Androidem 16, oraz zmiany, które można przełączać, które mogą pomóc w ogólnym testowaniu aplikacji.

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

Zmiany, które można przełączać w systemie sprawdzania zgodności w Androidzie 16

CAMERA_MIC_INDICATORS_NOT_PRESENT

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

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

DOWNSCALED

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

Ta zmiana jest kluczowa dla wszystkich zmian związanych ze zmniejszaniem bufora na aplikację. 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. Jeśli na przykład włączone są zarówno 80%, jak i 70% (DOWNSCALE_80 i DOWNSCALE_70), używana jest wartość 80%. Gdy włączona jest zarówno ta zmiana, jak i DOWNSCALED_INVERSE, pierwszeństwo ma DOWNSCALED_INVERSE, a współczynnik skalowania jest stosowany odwrotnie.

DOWNSCALED_INVERSE

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

Ta zmiana jest kluczowa dla wszystkich zmian dotyczących odwrotnego zmniejszania bufora dla poszczególnych aplikacji. Włączenie tej zmiany umożliwia odwrotne stosowanie tych współczynników skalowania (czyli rozdzielczość jest zwiększana):

Gdy ta zmiana jest włączona w przypadku pakietu aplikacji, rozmiar aplikacji jest wymuszany na najniższym włączonym współczynniku skalowania. Jeśli na przykład włączone są opcje 80% i 70% (DOWNSCALE_80 i DOWNSCALE_70), używany jest współczynnik 80%, ponieważ po zastosowaniu odwrotnym współczynnik skalowania 80% jest równy 125%, co jest mniejsze niż skalowanie 142,86% stosowane po odwrotnym zastosowaniu współczynnika skalowania 70%. Gdy włączona jest zarówno ta zmiana, jak i DOWNSCALED, pierwszeństwo ma DOWNSCALED_INVERSE, a współczynnik skalowania jest stosowany odwrotnie.

DOWNSCALE_30

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

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

DOWNSCALE_35

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

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

DOWNSCALE_40

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

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

DOWNSCALE_45

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

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

DOWNSCALE_50

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

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

DOWNSCALE_55

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

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

DOWNSCALE_60

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

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 60% rozdzielczości rzeczywistego wyświetlacza. Jeśli włączona jest też opcja DOWNSCALED_INVERSE, włączenie tej zmiany w pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 166,67% rozdzielczości rzeczywistego wyświetlacza.

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 pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 65% rozdzielczości rzeczywistego wyświetlacza. Jeśli włączona jest też opcja DOWNSCALED_INVERSE, włączenie tej zmiany w pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 153,85% rzeczywistej rozdzielczości wyświetlacza.

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 pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 70% rozdzielczości rzeczywistego wyświetlacza. Jeśli włączona jest też opcja DOWNSCALED_INVERSE, włączenie tej zmiany w przypadku pakietu wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 142,86% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_75

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

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 75% rozdzielczości rzeczywistego wyświetlacza. Jeśli włączona jest też opcja DOWNSCALED_INVERSE, włączenie tej zmiany w pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 133,33% rozdzielczości 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 pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 80% rozdzielczości rzeczywistego wyświetlacza. Jeśli włączona jest też opcja DOWNSCALED_INVERSE, włączenie tej zmiany w przypadku pakietu wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 125% rozdzielczości rzeczywistego wyświetlacza.

DOWNSCALE_85

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

Jeśli włączona jest też opcja DOWNSCALED, włączenie tej zmiany w przypadku pakietu wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 85% rozdzielczości rzeczywistego wyświetlacza. Jeśli włączona jest też opcja DOWNSCALED_INVERSE, włączenie tej zmiany w pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 117,65% rozdzielczości 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 wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 90% rzeczywistej rozdzielczości wyświetlacza. Jeśli włączona jest też opcja DOWNSCALED_INVERSE, włączenie tej zmiany w pakiecie wymusza na aplikacji założenie, że działa na wyświetlaczu o rozdzielczości pionowej i poziomej równej 111,11% rozdzielczości rzeczywistego wyświetlacza.

ENFORCE_STRICT_QUERY_BUILDER

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

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

FORCE_DISABLE_HEVC_SUPPORT

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

Wymuś wyłączenie obsługi funkcji multimedialnych HEVC przez aplikację. Aplikacje powinny deklarować obsługiwane funkcje multimedialne w pliku manifestu, ale tej flagi można użyć, aby wymusić brak obsługi HEVC przez aplikację, co wymusi transkodowanie podczas uzyskiwania dostępu do multimediów zakodowanych w HEVC. Ustawienie tej flagi zastępuje wszystkie 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 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łączone we wszystkich aplikacjach.

Wymuś włączenie obsługi formatu HEVC w aplikacji. Aplikacje powinny deklarować obsługiwane formaty multimediów w pliku manifestu, ale ta flaga może służyć do wymuszenia obsługi formatu HEVC, co pozwala uniknąć transkodowania podczas uzyskiwania dostępu do multimediów zakodowanych w tym formacie. Ustawienie tej flagi zastępuje wszystkie 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 włączona jest zarówno ta flaga, jak i FORCE_DISABLE_HEVC_SUPPORT, system operacyjny ignoruje obie flagi.

FORCE_NON_RESIZE_APP

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

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łączone we wszystkich aplikacjach.

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

GWP_ASAN

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

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

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

NATIVE_HEAP_ZERO_INIT

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

Włącz automatyczną inicjalizację zerową alokacji pamięci sterty natywnej.

NATIVE_MEMTAG_ASYNC

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

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

NATIVE_MEMTAG_SYNC

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

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 Memory Tagging Extension (MTE) architektury ARM. Jeśli włączone są zarówno zasada NATIVE_MEMTAG_ASYNC, jak i ta opcja, ta opcja ma pierwszeństwo, a MTE jest włączone w trybie SYNC.

OVERRIDE_ANY_ORIENTATION

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

Gdy ta opcja jest włączona, można stosować te zastąpienia orientacji niezależnie od orientacji żądanej przez aktywność:

OVERRIDE_ANY_ORIENTATION_TO_USER

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

Jeśli ta opcja jest włączona, włącza SCREEN_ORIENTATION_USER, co zastępuje orientację wymaganą przez aktywność. Aplikacje o stałej orientacji można zastąpić na pełny ekran na urządzeniach z dużym ekranem, na których włączono ignoreOrientationRequest.

OVERRIDE_CAMERA_COMPAT_DISABLE_FREEFORM_WINDOWING_TREATMENT

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

Jeśli jest włączona, pakiety, do których zastosowano zastąpienie, są wykluczane z traktowania zgodności aparatu w trybie okien swobodnych w przypadku aplikacji o stałej orientacji.

W trybie okien swobodnych funkcja zgodności emuluje działanie na urządzeniu w orientacji pionowej, dodając czarne pasy do okna aplikacji i zmieniając charakterystykę aparatu na taką, jakiej aplikacje zwykle oczekują na urządzeniu w orientacji pionowej: obrót czujnika o 90 i 270 stopni odpowiednio w przypadku tylnego i przedniego aparatu oraz ustawienie obrotu wyświetlacza na 0.

Użyj tej flagi, aby wyłączyć tryb zgodności w przypadku aplikacji, które nie działają prawidłowo w tym trybie.

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

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

Gdy ta zmiana jest włączona, pakiety, do których jest stosowana, ignorują bieżącą wartość android:resizeableActivity oraz docelowy pakiet SDK równy lub niższy niż Android 6.0 (poziom interfejsu API 23) i uznają aktywność za taką, której rozmiaru nie można zmienić. W tym przypadku wartość obrotu i przycięcia obrazu z kamery zależy tylko od potrzebnej kompensacji, biorąc pod uwagę bieżący obrót wyświetlacza.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

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

Gdy ta opcja jest włączona, pakiety, do których jest stosowana, zastępują domyślne zachowanie obracania i przycinania aparatu i zawsze zwracają CaptureRequest.SCALER_ROTATE_AND_CROP_NONE.

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

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

Gdy ta opcja jest włączona, użytkownicy mogą wybrać, czy chcą przechwytywać pojedynczą aplikację czy cały ekran podczas rozpoczynania sesji MediaProjection, co zastępuje użycie MediaProjectionConfig#createConfigForDefaultDisplay.

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

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

Włącza SCREEN_ORIENTATION_REVERSE_LANDSCAPE w aplikacji, do której jest stosowana. Jeśli nie jest też włączona opcja OVERRIDE_ANY_ORIENTATION, SCREEN_ORIENTATION_REVERSE_LANDSCAPE jest używana tylko wtedy, gdy aktywność określa orientację poziomą. Włączenie tej zmiany może pomóc w przetestowaniu działania aplikacji pod kątem różnic między urządzeniami, na których orientacja pozioma odpowiada wartości Surface.ROTATION_90, a urządzeniami, na których odpowiada wartości Surface.ROTATION_270.

OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE

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

Gdy ta opcja jest włączona, zastępuje działanie układu w trybie wycięcia w ekranie. To ustawienie będzie stosowane tylko wtedy, gdy nie jest wymuszony tryb od krawędzi do krawędzi.

OVERRIDE_MIN_ASPECT_RATIO

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

Ta zmiana jest strażnikiem wszystkich zmian, które wymuszają dany minimalny format obrazu. Włączenie tej zmiany umożliwia stosowanie tych minimalnych formatów obrazu:

Gdy ta zmiana jest włączona w przypadku pakietu aplikacji, minimalny format obrazu podany w pliku manifestu aplikacji jest zastępowany największym włączonym formatem obrazu, chyba że wartość w pliku manifestu aplikacji jest większa.

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

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

Gdy ta opcja jest włączona, zastępuje ograniczenie minimalnego formatu obrazu w trybie pełnoekranowym w orientacji pionowej, aby wykorzystać całe dostępne miejsce na ekranie.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

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

Gdy włączona jest też opcja OVERRIDE_MIN_ASPECT_RATIO, włączenie tej zmiany w pakiecie powoduje ustawienie minimalnego formatu obrazu 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łączone we wszystkich aplikacjach.

Gdy włączona jest też opcja OVERRIDE_MIN_ASPECT_RATIO, włączenie tej zmiany w pakiecie powoduje ustawienie minimalnego formatu obrazu aktywności na średnią wartość zdefiniowaną przez OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

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

Gdy ta opcja jest włączona, ogranicza stosowanie ustawień wymuszających dany minimalny format obrazu, tak aby były one stosowane tylko wtedy, gdy aplikacja jest połączona z aparatem.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

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

Gdy włączona jest też flaga OVERRIDE_MIN_ASPECT_RATIO, ta zmiana ogranicza wszelkie inne zmiany, które wymuszają minimalny format obrazu aktywności o określonej wartości – takie jak OVERRIDE_MIN_ASPECT_RATIO_LARGE i OVERRIDE_MIN_ASPECT_RATIO_MEDIUM – do aktywności, które mają też orientację pionową.

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

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

Gdy ta opcja jest włączona, ta zmiana wyklucza pakiety, do których jest stosowana, z ignorowania ograniczeń orientacji, które mogą ustawiać producenci urządzeń.

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

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

Włącza SCREEN_ORIENTATION_NOSENSOR w aplikacji, do której jest stosowana. Jeśli nie jest też włączona zasada OVERRIDE_ANY_ORIENTATION, zasada SCREEN_ORIENTATION_NOSENSOR jest używana tylko wtedy, gdy aktywność nie określa żadnej innej stałej orientacji.

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

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

Włącza SCREEN_ORIENTATION_PORTRAIT w aplikacji, do której jest stosowana. Jeśli nie jest też włączona zasada OVERRIDE_ANY_ORIENTATION, zasada SCREEN_ORIENTATION_PORTRAIT jest używana tylko wtedy, gdy aktywność nie określa żadnej innej stałej orientacji.

RATE_LIMIT_TOASTS

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

Włącza ograniczanie liczby żądań Toast.show(), aby nie obciążać użytkownika zbyt dużą liczbą powiadomień w ograniczonym czasie. Każda próba wyświetlenia większej liczby powiadomień, niż jest to dozwolone w określonym czasie, spowoduje odrzucenie powiadomienia.

STPE_SKIP_MULTIPLE_MISSED_PERIODIC_TASKS

Identyfikator zmiany: 288912692
Stan domyślny: włączone w przypadku aplikacji kierowanych na Androida 16 (API na poziomie 36) lub nowszego.

Gdy ta opcja jest włączona, po powrocie aplikacji do prawidłowego cyklu życia natychmiast wykonywane jest co najwyżej 1 pominięte wykonanie scheduleAtFixedRate.

Więcej informacji o tej zmianie znajdziesz w sekcji Optymalizacja planowania zadań o stałej częstotliwości na stronie poświęconej zmianom zachowania w Androidzie 16.

UNIVERSAL_RESIZABLE_BY_DEFAULT

Identyfikator zmiany: 357141415
Stan domyślny: włączone w aplikacjach kierowanych na Androida 16 (API na poziomie 36) lub nowszego.

Gdy ta opcja jest włączona, ograniczenia dotyczące orientacji, możliwości zmiany rozmiaru i formatu obrazu aplikacji są ignorowane na dużych ekranach (o szerokości większej niż 600 dp).

Więcej informacji o tej zmianie znajdziesz w sekcji Układy adaptacyjne na stronie poświęconej zmianom zachowania w Androidzie 16.

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.