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" mülkünü kullanabilir.

Web uygulaması manifesti, tarayıcıya Progressive Web Uygulamanız 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 mülkü aracılığıyla, 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ı kromunu gizleyebilirsiniz. Oyunlar tam ekranda başlatılacak şekilde ayarlanabilir. Bu makalenin yazıldığı sırada belirtilen ekran modlarını kısaca özetlemek için aşağıdaki tabloya göz atın.

Ö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 ve hissedilecek ş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'e benzer ancak kullanıcıya gezinmeyi kontrol etmek için minimum düzeyde kullanıcı arayüzü öğeleri (geri ve yeniden yükleme gibi) sağlar.
browser Standart bir tarayıcı deneyimi.

Bu görüntüleme modları iyi tanımlanmış bir yedek zincirine ("fullscreen""standalone""minimal-ui""browser") uyar. Bir tarayıcı belirli bir modu desteklemiyorsa zincirdeki bir sonraki görüntüleme moduna geçer.

display mülkünün eksiklikleri

Bu sabit yedek zincir yaklaşımının üç sorunu vardır:

  • "minimal-ui" belirli bir tarayıcı tarafından desteklenmiyorsa geliştirici, "browser" görüntüleme moduna geri dönmek zorunda kalmadan "minimal-ui" isteğinde bulunamaz.
  • Geliştiriciler, tarayıcıda "standalone" modu için pencerede geri düğmesi olup olmadığı gibi tarayıcılar arası farklılıkları ele alamaz.
  • Sekmeli uygulama modu gibi keşiflerin yedek zincirinde doğal bir yeri olmadığından, mevcut davranış yeni görüntüleme modlarının geriye dönük uyumlu bir şekilde tanıtılmasını imkansız kılıyor.

display_override mülkü

Bu sorunlar, display mülkünden önce tarayıcı tarafından dikkate alınan display_override mülkü tarafından çözülür. Değeri, sıralı olarak kabul edilen bir dize dizisidir ve desteklenen ilk görüntüleme modu uygulanır. Hiçbiri desteklenmiyorsa tarayıcı, display alanını değerlendirmeye geri döner.

Aşağıdaki örnekte, görüntüleme modu yedek zinciri aşağıdaki gibi olur. ("window-controls-overlay" ile ilgili ayrıntılar bu makalenin kapsamı dışındadır.)

  1. "window-controls-overlay" (Önce display_override bölümüne bakın.)
  2. "minimal-ui"
  3. "standalone" (display_override bittiğinde display değerini değerlendirin.)
  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 kabul edilmeyecektir. display_override özelliğini desteklemeyen tarayıcılar display mülküne geri döner ve display_override'yi bilinmeyen bir web uygulaması manifest mülkü olarak yoksayar.

Tasdik

display_override mülkü Daniel Murphy tarafından resmileştirildi.