Progresif Web Uygulaması çevrimdışı destek algılamasını iyileştirme

Penny McLachlan
Penny McLachlan

Progresif Web Uygulamaları (PWA'lar), mobil ve masaüstü cihazlar için web teknolojisini kullanarak modern, yüklenebilir uygulamalar oluşturmaya yönelik bir modeldir.

Modern bir web deneyimi oluşturmanın ölçütlerinden biri (PWAs ile alakasız olarak) uygulamanın, cihaz çevrimdışı olsa bile çalışmaya devam etmesidir. Yani kullanıcı cihazında ağ erişimini kaybederse Chrome Dino ekranı gösterilmez.

Tüm PWA ölçütlerinin amacı, kullanıcıların web'de gezinirken uygulamalarla rekabet edebilecek yüksek kaliteli bir deneyim yaşamalarına yardımcı olmaktır. Chrome, PWA'nın yükleme özelliğini etkinleştirmeden önce PWA ölçütlerine göre kontroller gerçekleştirir.

Yalnızca çevrimdışı mod desteği de dahil olmak üzere tüm temel Progresif Web Uygulaması yüklenilebilirlik ölçütlerini karşılayan uygulamalar Chrome'dan cihaza yüklenebilir.

Önceki çevrimdışı algılama mantığı

Çevrimdışı desteğin doğrulanması, PWA yüklenebilirlik ölçütlerinin bir parçası olarak birkaç yıldır kullanılmaktadır. Yakın zamana kadar Chrome, hizmet çalışanı aracılığıyla istekleri simüle edemiyordu. Bu nedenle, doğru çevrimdışı davranışın tam olarak kontrol edilmesi mümkün değildi.

Hizmet çalışanı şeması

Bu, Chrome'un fetch etkinlik işleyicisinin çevrimdışı kontrol sırasında HTTP 200 ile geçerli bir kaynak döndürüp döndürmediğini doğrulayamadığı anlamına geliyordu. Chrome yalnızca hizmet çalışanının gerçekten bir fetch işleyicisi olup olmadığını kontrol etti.

Çevrimdışı algılama mantığı güncellendi

Chrome 89, hizmet çalışanı aracılığıyla simüle edilmiş çevrimdışı istekler çalıştırma özelliğini ekledi. Bu özellik, iyileştirilmiş çevrimdışı algılama mantığının uygulamanın gerçek çevrimdışı desteğini daha iyi yansıtmasına olanak tanır.

Bu yeni özelliği, PWA'ların çevrimdışıyken geçerli bir sayfa sağlamasını sağlamak için kullanmayı planlamıştık ancak bu planları beklemeye aldık. Sayfada fetch etkinlik işleyici içeren bir hizmet çalışanı varsa yüklenilebilirlik kontrolü başarılı olmaya devam eder.

Bu durum geliştiriciler için ne anlama geliyor?

Şu anda herhangi bir değişiklik gerekmiyor ancak gelecekte geçerli bir sayfa olup olmadığını kontrol etmek için güncellenmiş mantığı kullanmayı planladığımızdan çevrimdışı bir deneyim sunmanızı önemle tavsiye ederiz.

Ne tür bir çevrimdışı deneyim sunmak istediğinize siz karar verirsiniz. Bu yelpazenin bir ucunda tamamen işlevsel bir çevrimdışı deneyim yer alır. Bu, gerekli tüm kaynakları ve verileri önceden önbelleğe alma ve kullanıcı tekrar çevrimiçi olduğunda verileri sunucunuzla senkronize etme anlamına gelir. Kaynakları önbelleğe almak, kaynakları her seferinde ağdan indirme ihtiyacını ortadan kaldırdığı için Core Web Vitals metriklerinin iyileştirilmesine de yardımcı olur. Spektrumun diğer ucunda ise özel çevrimdışı yedek sayfa yer alır.

Geliştirici araçlarının Sorunlar sekmesinde gösterilen uyarı, Chrome 90 civarında kaldırılacak.