Ana içeriğe atla

Genel Bakış

Sessiz bildirimler, görünür bir mesaj göstermeden veya ses çalmadan uygulamanızı uyandırmanıza ve arka plan görevlerini (senkronizasyon veya veri yenileme gibi) gerçekleştirmenize olanak tanır. iOS’ta bunlara Arka Plan Bildirimleri denir ve Android’de Veri Bildirimleri olarak bilinir. Birlikte, genellikle sessiz push olarak anılırlar ve normal, görünür bildirimlerden farklı davranırlar. Bu kılavuz, desteklenen platformlarda OneSignal ile sessiz bildirimlerin nasıl yapılandırılacağını ve gönderileceğini açıklar.

Sınırlamalar

Sessiz bildirimler normal push mesajlarından farklı davranır ve birkaç platforma özgü sınırlaması vardır.
  • Uygulamalar sessiz push alamaz eğer:
    • iOS: Kullanıcı tarafından uygulama kapatılmışsa, örneğin uygulama değiştiriciden kaydırılarak silindiğinde. (Apple desteği’ne bakın).
    • Android: Uygulama cihaz ayarları üzerinden zorla kapatılmışsa veya bazı üreticiler tarafından kaydırıldığında otomatik olarak kapatılmışsa. (Daha fazla ayrıntı burada).
  • Teslimat garanti edilmez:
    • Hem Apple hem de Google sessiz bildirimleri en iyi çaba olarak ele alır. iOS, Düşük Güç Modu altında, Arka Planda Uygulama Yenileme kapalıyken veya kullanıcı uygulamayı kapatmışsa teslimatı geciktirebilir veya iptal edebilir. Android, Doze veya OEM güç tasarrufu kuralları altında teslimatı azaltabilir veya toplu işleyebilir.
    • Bu nedenle, sessiz bildirimler asla kritik güncellemeler için kullanılmamalıdır.
  • Yalnızca abone olan kullanıcılar: OneSignal SDK yalnızca abone olan Aboneliklere veri bildirimleri gönderir. Abone olmayan kullanıcılara ulaşmak için bu geçici çözümü izleyin.
  • Çapraz platform SDK’lar için sınırlı destek:

OneSignal’dan sessiz bildirim gönderme

OneSignal’dan sessiz bildirim göndermek için şu adımları izleyin:
1

Görünür içeriği çıkarın

Mesajdan görünür metin veya başlıkları kaldırın. Bunlar şunları içerir:
  • API: Create notification API isteğinizdeki contents, headings, subtitle.
  • Dashboard: Message, Title, Subtitle
2

content_available'ı ayarlayın

  • API: content_available’ı true olarak ayarlayın.
  • Dashboard: “Send to Apple iOS” altındaki Content available’ı işaretleyin. Bu tüm platformlar için geçerlidir ve sadece sistemimize hiçbir mesaj gönderilmediğini söyler.
3

Bildirime veri ekleyin

  • API: data parametresini kullanın.
  • Dashboard: Additional Data alanlarını kullanın.

Platforma özgü kurulum

iOS arka plan bildirimi kurulumu

Arka plan bildirimlerini işlemek için iOS uygulamanızın Xcode’da Background Modes > Remote Notifications özelliğini etkinleştirmiş olması gerekir. Mobil SDK Kurulumu’nu izlediyseniz bu genellikle dahil edilir. Apple belgeleri:
Kullanıcı uygulamayı kapattıysa (uygulama değiştiriciden kaydırılarak silinmişse), iOS bildirimi teslim etmeyecektir.Bu durumlarda, görünür bir contents mesajı ekleyin ve verileri UNNotificationServiceExtension.didReceive’de işleyin.

Android veri bildirimi kurulumu

Bildirim Hizmeti Uzantısı kullanarak Android’de veri bildirimlerini işleyin. Bu şunları sağlar:
  • Uygulama zorla kapatılmadığı sürece bildirimleri işleme
  • Bildirimlerin nasıl görüntüleneceğini veya gizleneceğini özelleştirme

VoIP bildirimleri gönderme

VoIP bildirimleri desteklenir ancak standart OneSignal SDK’larının dışında ek yapılandırma gerektirir. OneSignal, VoIP token’larını otomatik olarak kaydetmez. Kurulum talimatları için VoIP Bildirimleri Kurulum Kılavuzu’na bakın.

SSS

Sessiz bildirimler kaldırmaları veya abonelik iptallerini tespit etmek için kullanılabilir mi?

Teknik olarak evet, ancak güvenilir değil. Yukarıdaki Sınırlamalar bölümünde açıklandığı gibi, sessiz bildirimlerin teslim edilmesi garanti edilmez. Bunun yerine:
  • Tüm kullanıcılarınıza ayda en az bir kez görünür bildirimler (içerikli) gönderin.
  • İsteğe bağlı olarak tamamlayıcı bir kontrol olarak sessiz bildirimler gönderin.
Abonelik durumu değişikliklerinin nasıl ele alınacağı hakkında daha fazla bilgi için Abonelikler kılavuzumuza bakın.

Onaylanmış teslimatlar sessiz bildirimlerle çalışır mı?

Onaylanmış teslimatlar sessiz bildirimlerle çalışmaz.