Yayınlanma tarihi: 16 Temmuz 2026
Chrome 152'den itibaren macOS'e yüklenen progresif web uygulamalarının (PWA) bildirimleri, Google Chrome yerine doğrudan PWA'ya atfedilecek.
Bu, kullanıcı deneyiminde önemli bir iyileşmedir ve web uygulamalarının macOS'e daha entegre görünmesini sağlar. Ancak bu sürüm, bildirim izinlerinin işlenme şekli ve belirli bildirim API'lerinin davranış biçimiyle ilgili önemli değişiklikler de getiriyor.
Neler değişiyor?
Daha önce, PWA'lar tarafından gönderilen tüm bildirimler işletim sistemi düzeyinde Chrome'a atfediliyordu. macOS Bildirim Merkezi'nde "Google Chrome" altında görünürlerdi ve Chrome simgesini kullanırlardı. Kullanıcıların bildirimleri devre dışı bırakmak için macOS Sistem Ayarları'nı değil, Chrome'daki kontrolleri kullanması gerekiyordu.
Bildirim ilişkilendirme özelliği sayesinde, bir site PWA olarak yüklendiğinde macOS, bildirimler için bu siteyi ayrı bir uygulama olarak değerlendirir. Bu durum hem yeni yüklenen PWA'lar hem de kullanıcının daha önce yüklediği PWA'lar için geçerlidir.
Avantajları
- Marka kimliği: Bildirimlerde, macOS Bildirim Merkezi'nde ve banner'larda PWA'nın kendi adı ve simgesi gösterilir.
- Bilinen kullanıcı kontrolleri: Bu uygulamaların bildirim kontrolleri artık tam olarak kullanıcıların beklediği yerde, yani macOS Sistem Ayarları'nda (Chrome'da değil) gösteriliyor.
- Ayrıntılı kontrol: Kullanıcılar, tek tek PWA uygulaması bildirim ayarlarını (ör. uyarı stilleri, kilit ekranı davranışı) yönetebilir.
- Odaklanma modları: PWA'lar, macOS'teki odaklanma profillerinde (Rahatsız Etmeyin) ayrı ayrı izin verilebilir veya sessize alınabilir.
Yeni izin akışı
macOS artık PWA'yı ayrı bir uygulama olarak değerlendirdiğinden, PWA'nın bildirimleri gösterebilmesi için işletim sistemi düzeyinde bildirim izni alması gerekir. Bu işlem, hem yeni hem de mevcut kullanıcılar için izin akışını değiştirir.
Yeni kullanıcılar (ilk kez izin isteğinde bulunma)
Bir kullanıcı PWA yüklerse ve site, yükleme işleminden sonra bildirim izni isterse:
- Chrome, tarayıcı düzeyindeki izin istemini atlar (adres çubuğundaki açılır liste).
- Chrome, PWA için macOS sistem izni istemini hemen tetikler.
Mevcut kullanıcılar (taşıma yolu)
Bir kullanıcı Chrome'da web sitenize bildirim izni verdiyse ve ardından PWA'yı yüklediyse (veya daha önce yüklediyse) PWA'ya işletim sistemi düzeyinde izin vermesi gerekir.
Bu geçişi olabildiğince sorunsuz hale getirmek için:
- PWA ilk kez bildirim göndermeye çalıştığında macOS, sistem izni istemini gösterir.
- Kullanıcı onaylarsa bildirimler sorunsuz şekilde çalışmaya devam eder.
- Kullanıcı bu istemi yoksayar veya kapatırsa PWA, izinleri manuel olarak etkinleştirmek için kullanıcıyı macOS Sistem Ayarları'na yönlendiren bir uygulama içi gösterge (genellikle uygulamanın başlık çubuğunda veya menüsünde) gösterir.
Geliştirici etkisi: macOS'te requireInteraction desteğinin sonlandırılması
macOS'te, bir bildirimin kullanıcı tarafından kapatılana kadar ekranda kalıp kalmayacağı ("Kalıcı") veya otomatik olarak kaybolup kaybolmayacağı ("Geçici"), macOS Sistem Ayarları'nda kullanıcı tarafından kontrol edilen, uygulama bazında bir ayardır.
Bu işletim sistemi tasarımı nedeniyle, ilişkilendirme etkin olduğunda Chrome artık macOS'teki Notification API'de requireInteraction seçeneğine uymayacak.
Bu durum kodunuz için ne anlama geliyor?
Uygulamanız, önemli bildirimleri ekranda tutmak için requireInteraction: true özelliğini kullanıyorsa bu özellik macOS'te artık garanti edilmeyecektir. Bunun yerine şunları yapmalısınız:
- Uygulamanızı, bildirimlerin geçici (Temporary) olabileceğini varsayarak tasarlayın.
- Sürekli bildirimlere ihtiyaç duyan kullanıcıları, PWA'nın bildirim uyarı stilini
System Settings > Notifications > [Your PWA]bölümünde "Kalıcı" olarak yapılandırmaya teşvik edin.
Geliştiriciler üzerindeki etkisi: App Badging API için bildirim izni gerekiyor
Uygulama rozeti API'si, web uygulamalarının uygulama simgelerine rozet eklemesine (örneğin, okunmamış mesaj sayısını gösterme) olanak tanır. macOS'te uygulama simgesi rozetleri teknik olarak uygulamanın bildirim ayarlarına bağlıdır. Çünkü PWA artık kendi yerel bildirim kimliğine sahip:
- İzin gerekli: Rozetin Dock simgesinde görünmesi için PWA'da işletim sistemi düzeyinde bildirim izni etkinleştirilmelidir. Bu, macOS platform standartlarıyla uyumludur ve Safari'nin web uygulamaları için Badging API'yi ele alma şekliyle eşleşir.
- Sessiz hata: Kullanıcı,
System Settings > Notifications > [Your PWA]içinde "Uygulama simgesinde rozet"i devre dışı bırakırsa veya bildirim iznini tamamen reddedersenavigator.setAppBadge()çağrıları JavaScript'te (hata vermeden) başarılı olmaya devam eder ancak Dock'ta rozet gösterilmez. Uygulamanız rozet özelliğini kullanıyorsa rozetin gösterilebilmesi için bildirim izni isteyin.
Kurumsal yönetim üzerindeki etki
macOS cihazları yöneten ve bildirim izinlerini önceden vermek isteyen kurumsal yöneticiler için:
- Chrome politikası: PWA'nın kaynağına izin vermek için Chrome politikasını (
NotificationsAllowedForUrls) yapılandırmanız gerekir. - macOS Politikası: Ayrıca, PWA'nın paket tanımlayıcısına (App Shim) bildirim izinlerini önceden vermek için artık bir macOS yapılandırma profili (MDM) dağıtmanız gerekir.
Bu iki politika uygulanmadığı sürece kullanıcılara işletim sistemi düzeyinde istemler gösterilmeye devam eder.
Geliştiriciler için en iyi uygulamalar
- İzin durumunu kontrol edin: Bildirim göndermeden önce her zaman
Notification.permissionsimgesini kontrol edin. - Bağlama dayalı istemler: İznin web düzeyinde verildiğini ancak bildirimlerin görünmediğini tespit ederseniz (işletim sistemi düzeyindeki izin iptal edilmişse bu durum oluşabilir) kullanıcıyı macOS Sistem Ayarları'na yönlendirin.
- Geçici bildirimlere hazırlanın: macOS'teki kritik kullanıcı akışlarında
requireInteractionkullanmayın.