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 Aşamalı Web Uygulamanız hakkında bilgi veren ve kullanıcının masaüstü veya mobil cihazına yüklendiğinde nasıl davranması gerektiğini belirten bir JSON dosyasıdır. display özelliği 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ı çerçevesini gizleyebilirsiniz. Oyunlar tam ekran olarak başlatılabilir. Bu makalenin yazıldığı sırada belirtilen görüntüleme modları aşağıda özetlenmiştir.

Özellik Kullanım
fullscreen Web uygulamasını tarayıcı kullanıcı arayüzü olmadan açar ve kullanılabilir görüntüleme alanının tamamını kaplar.
standalone Web uygulamasını bağımsız bir uygulama gibi görünecek ve çalışacak ş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 benzerdir 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 ("fullscreen" → "standalone" → "minimal-ui" → "browser") takip eder. Tarayıcı belirli bir modu desteklemiyorsa zincirdeki bir sonraki görüntüleme moduna geçer.

display özelliğinin eksiklikleri

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

  • Geliştiriciler, belirli bir tarayıcı tarafından "minimal-ui" desteklenmeyen "minimal-ui" modunu talep ederse "browser" görüntüleme moduna geri dönmek zorunda kalır.
  • Geliştiricilerin, tarayıcılar arasındaki farklılıkları (ör. tarayıcının "standalone" modu penceresinde geri düğmesi bulunup bulunmaması) yönetme imkanı yoktur.
  • Mevcut davranış, sekmeli uygulama modu gibi keşiflerin yedek zincirde doğal bir yeri olmadığından yeni görüntüleme modlarını geriye dönük uyumlu bir şekilde sunmayı imkansız hale getirir.

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 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 şu şekilde olacaktır. ("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 edilebilir, display değeri olarak kabul edilemez. 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ştirilmiştir.