Przygotowania do jutrzejszych trybów wyświetlania

Do obsługi specjalnych trybów wyświetlania aplikacje PWA mogą korzystać z właściwości „display_override”.

Plik manifestu aplikacji internetowej to plik JSON, który informuje przeglądarkę o progresywnej aplikacji internetowej i jej działaniu po zainstalowaniu na komputerze lub urządzeniu mobilnym użytkownika. W usłudze display możesz dostosować interfejs przeglądarki wyświetlany po uruchomieniu aplikacji. Możesz na przykład ukryć pasek adresu i przeglądarkę Chrome. Gry można nawet tworzyć, aby uruchamiały się na pełnym ekranie. Poniżej znajdziesz listę trybów wyświetlania określonych w momencie pisania tego artykułu.

Właściwość Użycie
fullscreen Otwiera aplikację internetową bez interfejsu przeglądarki i zajmuje cały dostępny obszar wyświetlania.
standalone Otwiera aplikację internetową tak, by wyglądała i działała jak samodzielna aplikacja. Aplikacja działa w osobnym oknie, niepowiązane z przeglądarką i ukrywa standardowe elementy interfejsu przeglądarki, takie jak pasek adresu URL.
minimal-ui Ten tryb jest podobny do trybu standalone, ale udostępnia użytkownikowi minimalny zestaw elementów interfejsu służących do kontrolowania nawigacji (np. wstecz i odświeżanie).
browser Standardowa przeglądarka.

Te tryby wyświetlania są zgodne z dobrze zdefiniowanym łańcuchem kreacji zastępczych ("fullscreen""standalone""minimal-ui""browser"). Jeśli przeglądarka nie obsługuje danego trybu, wraca do następnego trybu wyświetlania w łańcuchu.

Wady usługi display

W przypadku takiego podłączenia przewodowego łańcucha awaryjnego występuje 3 problemy:

  • Jeśli przeglądarka nie obsługuje interfejsu "minimal-ui", deweloper nie może zażądać "minimal-ui" bez konieczności ponownego włączenia trybu wyświetlania "browser".
  • Deweloperzy nie obsługują różnic między przeglądarkami, np. włączają lub wykluczają przycisk Wstecz w oknie trybu "standalone".
  • Obecne działanie uniemożliwia wprowadzanie nowych trybów wyświetlania w sposób zgodny wstecznie, ponieważ eksploracje takie jak tryb aplikacji z kartami nie mają naturalnego miejsca w łańcuchu kreacji zastępczych.

Właściwość display_override

Te problemy rozwiązuje właściwość display_override, którą przeglądarka uważa przed właściwością display. Jego wartość to sekwencja ciągów tekstowych uznawanych za w kolejności. Zostanie zastosowany pierwszy obsługiwany tryb wyświetlania. Jeśli żadna z tych opcji nie jest obsługiwana, przeglądarka zwraca pole display.

W poniższym przykładzie łańcuch zastępowania trybu wyświetlania będzie wyglądać tak. (Szczegółowe informacje o grupie "window-controls-overlay" nie są uwzględnione w tym artykule).

  1. "window-controls-overlay" (Najpierw spójrz na display_override).
  2. "minimal-ui"
  3. "standalone" (Gdy zasób display_override jest wyczerpany, oceń wartość display).
  4. "minimal-ui" (na koniec użyj łańcucha kreacji zastępczych display).
  5. "browser"
{
  "display_override": ["window-controls-overlay", "minimal-ui"],
  "display": "standalone",
}

Aby zachować zgodność wsteczną, każdy kolejny tryb wyświetlania będzie akceptowalny jako wartość display_override, ale nie display. Przeglądarki, które nie obsługują display_override, wracają do właściwości display i ignorują display_override jako nieznaną właściwość manifestu aplikacji internetowej.

Poświadczenia

Właściwość display_override została sformalizowane przez Daniela Murphy'ego.