PWA'ları web uygulaması manifest kimliği mülküyle benzersiz bir şekilde tanımlama

Kullanıcı PWA'nızı yüklediğinde, tarayıcının PWA'yı benzersiz bir şekilde tanımlayabilmesi için bir yönteme ihtiyacı olur. Ancak yakın zamana kadar web uygulaması manifest spesifikasyonu bir PWA'yı benzersiz bir şekilde tanımlamanın yolunu açık bir şekilde tanımlamamıştı. Bu da tarayıcılar karar vermeye ve farklı uygulamalara yol açıyor. Bazı tarayıcılarda start_url, bazılarında ise manifest dosyasının yolu kullanılır. Bu da bu alanlardan herhangi birinin güncellenmesini imkansız kılar.

Web uygulaması manifest spesifikasyonunda, PWA'nız için kullanılan tanımlayıcıyı açık bir şekilde tanımlamanıza olanak tanıyan isteğe bağlı yeni bir id özelliği, bu sorunu çözmek amacıyla sunulmuştur. id özelliğini manifest dosyasına eklemek, start_url öğesine veya manifestin konumuna olan bağımlılığı ortadan kaldırır ve bunların gelecekte güncellenmesine olanak tanır.

id özelliği ne işe yarar?

id özelliği, PWA'nın tarayıcı kimliğini temsil eder. Tarayıcı, önceden yüklenmiş bir PWA ile eşleşen kimliğe sahip olmayan bir manifest gördüğünde, başka bir PWA ile aynı URL'den sunulsa bile bunu yeni bir PWA olarak değerlendirir. Ancak yüklü PWA ile eşleşen kimliğe sahip bir manifest görürse bunu yüklü PWA olarak değerlendirir.

Tarayıcı desteği

id mülkü için destek Chrome 96'da kullanıma sunuldu.

id içermeyen bir uygulamam varsa ne yapmalıyım?

Yapmanız gereken herhangi bir işlem yoktur. Web uygulaması manifest dosyanıza bir id eklemezseniz (start_url ve manifest yolu aynı kaldığı sürece) hiçbir şey bozulmaz. PWA'nızı geleceğe hazırlamak için web uygulaması manifest dosyanıza bir id özelliği ekleyebilirsiniz.

id özelliğimi nasıl belirleyip ayarlarım?

PWA için id belirlemenin en güvenli ve en doğru yolu, Chrome tarafından hesaplanan değeri kontrol etmektir.

  1. Chrome 96 veya sonraki bir sürümü kullanarak Geliştirici Araçları'ndaki Uygulama panelinin Manifest bölmesini açın.
  2. Farenizle Uygulama Kimliği mülkünün yanındaki (!) simgesinin üzerine gelin. (!) ipucu simgesi yalnızca web uygulaması manifest dosyasında id öğesi belirtilmediğinde görünür.
  3. Araç ipucunda gösterilen id değerine dikkat edin (aşağıdaki ekran görüntüsüne bakın).
  4. İpucunda gösterilen id değerini kullanarak web uygulaması manifest dosyasına bir id özelliği ekleyin.

"Kimlik" değerini gösteren ipucu.

{
  ...
  id: "/?homescreen=1",
  start_url: "/?homescreen=1",
  ...
}

id ayarlamazsam ne olur?

Endişelenmeyin, hiçbir şey bozulmaz. Chrome 96'dan itibaren tarayıcı, web uygulaması manifest dosyasındaki start_url öğesine dayalı manifestte yoksa bir id etiketi oluşturacaktır.

Tarayıcı, PWA'yı start_url veya manifest yolu yerine belirtilen id öğesine göre tanımlar. Bu nedenle, web uygulaması manifest dosyasına id eklenmesi, start_url ve manifest yolunun değiştirilmesini sağlar (ancak sadece ilgili kaynak aynı kalırsa!).

Bunu nasıl test edebilirim?

Davranışı test etmek için şu adımları uygulayın:

  1. PWA'yı yükleyin.
  2. about://web-app-internals/ uygulamasını açın ve yüklü PWA için unhashed_app_id ve start_url özelliğini kontrol edin.
  3. Yukarıdaki id değerimi nasıl belirlerim ve ayarlarım? bölümündeki adımları uygulayarak web uygulaması manifest dosyanıza bir id mülkü ekleyin.
  4. chrome://restart kullanarak tarayıcıyı yeniden başlatın, about://apps adresinden PWA'yı başlatın, ardından manifest dosyasını yenilenmeye zorlamak için PWA'yı kapatın.
  5. Yüklü PWA'nın değişmediğini doğrulamak için about://web-app-internals/ uygulamasını açın ve manifest_id özelliğini kontrol edin.
  6. Web uygulaması manifest dosyasında start_url öğesini değiştirin.
  7. chrome://restart kullanarak tarayıcıyı yeniden başlatın, about://apps adresinden PWA'yı başlatın, ardından manifest dosyasını yenilenmeye zorlamak için PWA'yı kapatın.
  8. about://web-app-internals/ uygulamasını açın ve yüklü PWA'nın start_url özelliğini kontrol ederek uygulamanın beklendiği gibi güncellendiğini doğrulayın.

Ek kaynaklar