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.)
"window-controls-overlay"
(Öncelikledisplay_override
bölümüne bakın.)"minimal-ui"
"standalone"
(display_override
tükendiğindedisplay
değerlendirilir.)"minimal-ui"
(Son olarak,display
yedek zincirini kullanın.)"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.
Faydalı bağlantı
- Açıklama
- Kargoya verme niyeti mesaj dizisi
- Chromium hatası
- Chrome Durum Girişi
- Manifest Incubations deposu
Teşekkür
display_override
özelliği Daniel Murphy tarafından resmileştirildi.