Yarının görüntü modlarına hazırlanıyor

PWA'lar, özel görüntüleme modlarıyla başa çıkmak için "display_override" özelliğini kullanabilir.

Web uygulaması manifesti, tarayıcıya Progressive Web App'iniz ve kullanıcının masaüstü veya mobil cihazına yüklendiğinde nasıl davranması gerektiği hakkında bilgi veren bir JSON dosyasıdır. display özelliği sayesinde, uygulamanız başlatıldığında hangi tarayıcı kullanıcı arayüzünün gösterileceğini özelleştirebilirsiniz. Örneğin, adres çubuğunu ve tarayıcı çerçevesini gizleyebilirsiniz. Oyunlar tam ekran olarak başlatılabilir. Kısa bir özet olarak, bu makalenin yazıldığı sırada belirtilen ekran modlarını aşağıda bulabilirsiniz.

Özellik Kullanım
fullscreen Web uygulamasını tarayıcı kullanıcı arayüzü olmadan açar ve mevcut ekran alanının tamamını kaplar.
standalone Web uygulamasını bağımsız bir uygulama gibi görünecek şekilde açar. Uygulama, tarayıcıdan ayrı olarak kendi penceresinde çalışır ve URL çubuğu gibi standart tarayıcı kullanıcı arayüzü öğelerini gizler.
minimal-ui Bu mod, standalone'a benzer ancak kullanıcıya gezinmeyi kontrol etmek için minimum düzeyde kullanıcı arayüzü öğeleri (ör. geri ve yeniden yükle) sunar.
browser Standart bir tarayıcı deneyimi.

Bu görüntüleme modları, iyi tanımlanmış bir yedek zincirini izler ("fullscreen""standalone""minimal-ui""browser"). Bir tarayıcı belirli bir modu desteklemiyorsa zincirdeki bir sonraki görüntüleme moduna geri döner.

display özelliğinin eksiklikleri

Bu kablolu yedekleme zinciri yaklaşımıyla ilgili üç sorun vardır:

  • Bir geliştirici, "minimal-ui" belirli bir tarayıcı tarafından desteklenmediği takdirde "minimal-ui" isteğinde bulunamaz ve "browser" görüntüleme moduna geri dönmeye zorlanır.
  • Geliştiricilerin, tarayıcının "standalone" modu için pencerede geri düğmesi içerip içermemesi gibi tarayıcılar arası farklılıkları ele alma yolu yoktur.
  • Mevcut davranış, sekme görünümü gibi keşifler yedek zincirinde doğal bir yere sahip olmadığından yeni ekran modlarının geriye dönük uyumlu bir şekilde kullanıma sunulmasını imkansız hale getiriyor.

display_override özelliği

Bu sorunlar, tarayıcının display özelliğinden önce dikkate aldığı display_override özelliği tarafından çözülür. Değeri, sırayla değerlendirilen bir dizi dizedir ve desteklenen ilk ekran modu uygulanır. Hiçbiri desteklenmiyorsa tarayıcı, display alanını değerlendirmeye geri döner.

Aşağıdaki örnekte, ekran modu yedekleme zinciri şu şekilde olur: ("window-controls-overlay" ile ilgili ayrıntılar bu makalenin kapsamı dışındadır.)

  1. "window-controls-overlay" (Öncelikle display_override bölümüne bakın.)
  2. "minimal-ui"
  3. "standalone" (display_override tükendiğinde display değerlendirilir.)
  4. "minimal-ui" (Son olarak, display yedek zincirini kullanın.)
  5. "browser"
{
  "display_override": ["window-controls-overlay", "minimal-ui"],
  "display": "standalone",
}

Geriye dönük uyumluluğu korumak için gelecekteki tüm görüntüleme modları yalnızca display_override değeri olarak kabul edilecek, display değeri olarak kabul edilmeyecektir. display_override özelliğini desteklemeyen tarayıcılar, display özelliğine geri döner ve display_override özelliğini bilinmeyen bir web uygulaması manifest özelliği olarak yoksayar.

Teşekkür

display_override özelliği Daniel Murphy tarafından resmileştirildi.