Ana içeriğe atla
Web sitenizle ilgili sorunlar yaşıyorsanız, Web Push Sorun Giderme kılavuzuna bakın.

Sorun giderme adımları

Kurulum talimatlarını gözden geçirin ve SDK’yı güncelleyin

Hata düzeltmeleri, iyileştirmeler ve en son işletim sistemi değişiklikleri için desteği içeren güncellemeleri sıklıkla yayınlıyoruz. En son SDK sürümünü kullandığınızdan ve kurulum talimatlarını takip ettiğinizden emin olun.

Mobil SDK kurulumu

Yaygın sorunları önlemeye ve entegrasyonu test etmeye yardımcı olmak için tasarlanmış kurulum talimatları.

Yaygın sorun giderme kılavuzlarını inceleyin

Uygulamanızda yaygın sorunları kontrol edin

Push görüntülemeyi engelleyen OneSignal yöntemleri

Uygulamanızda OneSignal.User.pushSubscription.optOut() gibi optOut() yöntemleri olup olmadığını veya REST API’lerimiz aracılığıyla enabled: false ayarladığınızı kontrol edin. Bu, push abonelik durumunu unsubscribed olarak ayarlar. Daha fazla ayrıntı için Mobile SDK referansına bakın. Push gönderilirken uygulama açıksa, preventDefault() yöntemi aracılığıyla push’un gösterilmesini engelliyor olabilirsiniz. Bu genellikle Ön Plan Olay Dinleyicisi veya Android Bildirim Servis Uzantısı içinde ayarlanır.

Firebase Messaging veya diğer SDK çakışmaları

Uygulamanız Firebase Messaging SDK veya diğer push bildirim SDK’larını da içeriyorsa, OneSignal mesajları işlemeden önce bunların mesajları engellemediğini doğrulayın. Bu sorun genellikle şu durumlarda ortaya çıkar:
  • Bildirimler OneSignal’da Teslim Edildi olarak görünüyor ancak cihazda hiç görünmüyor.
  • Uygulama hem OneSignal hem de firebase_messaging (veya özel FirebaseMessagingService) içeriyor.
  • Firebase Messaging kaldırıldığında push çalışıyor ancak her iki SDK de mevcutken başarısız oluyor.
  1. AndroidManifest.xml dosyanızda com.google.firebase.iid.FirebaseInstanceIdReceiver gibi eski Firebase alıcıları olup olmadığını kontrol edin ve OneSignal push tesliminden sorumluysa bunları kaldırın/koşullu olarak hariç tutun.
  2. onMessageReceived işlevini geçersiz kılan özel FirebaseMessagingService uygulamalarını (veya Flutter’daki firebase_messaging gibi kütüphaneleri) kontrol edin. Başka bir servis mesajları tamamen işlerse veya bastırırsa, OneSignal bildirimi görüntülemeden önce FCM yükünü tüketebilir.
  3. FirebaseMessaging.getToken() veya FirebaseMessaging.deleteToken() gibi Firebase token yönetim API’larını çağırmaktan kaçının.
OneSignal push tesliminden sorumluysa, push token yaşam döngüsünü yöneten tek SDK olmalıdır. FCM token’ını doğrudan almak veya yönetmek, token sahipliği çakışmalarına ve tutarsız teslimat davranışına yol açabilir. Diğer sistemler için cihaz push token’ına ihtiyacınız varsa, OneSignal’dan okuyun (örneğin, User.pushSubscription.token) ve SDK’nın gözlemci API’larını kullanarak abonelik/token değişikliklerini dinleyin.

SDK’nız için örnek projeyi test edin

Her SDK için mühendislik ekibimiz tarafından sürdürülen örnek projeyi kullanarak sorunun tekrarlanabilir olup olmadığını kontrol edin.

Hata günlüklerini kontrol edin

Daha fazla teşhis yapmadan önce günlük verilerini toplayın:

Hata ayıklama günlüğü yakalama

Ayrıntılı günlük kaydını etkinleştirme ve sorun giderme için SDK çıktısını yakalama.

Desteğe başvurun

Hala sorun yaşıyorsanız, support@onesignal.com adresine şunları sağlayarak başvurun:
  • OneSignal App ID’niz
  • Etkilenen cihazın External ID’si ve/veya Subscription ID’si
  • Varsa bildirim ID’si veya panodaki bildirime bağlantı
  • Sorunu yeniden üreten cihazdan hata ayıklama günlüğü

Yaygın hatalar

APNS Delegate never fired

“APNS Delegate Never Fired” ve “APNS 3000” gibi hatalar, cihazın Apple’ın APNS sunucularına bağlanamadığını belirten Apple’ın zaman aşımı mesajlarıdır. Bu en yaygın olarak şu durumlarda görülür:
  • APNS geliştirme ortamlarında test edilirken
  • OneSignal ile birden fazla push bildirim bağımlılığı veya yerel iOS push API’leri kullanılırken
  • Geçici bir bağlantı sorunu — kullanıcı bir sonraki yeni oturumu başlattığında genellikle kendiliğinden çözülür (uygulama 30+ saniye arka planda, ardından yeniden açılır)
Çözüm adımları:
  1. Diğer push bildirim bağımlılıklarını veya yerel iOS push API’lerini kaldırın ve yalnızca OneSignal’i kullanın. Hata çözüldükten sonra, diğer kodu geri ekleyebilirsiniz. Birlikte var olma en iyi uygulamaları için support@onesignal.com ile iletişime geçin.
  2. Daha fazla ayrıntı için cihazdan hata ayıklama günlüğünü kontrol edin.
  3. Hata devam ederse, desteğe başvurun.
Capacitor kullanıyorsanız, OneSignal’in push bildirimleri işlemesine izin vermek için bu yapılandırmayı ekleyin.
{
  "ios": {
    "handleApplicationNotifications": false
  }
}

Uygulama zorla kapatıldığında ve bildirime tıklandığında açılmıyor

Debug derlemesinde test yapmadığınızdan emin olun. Örneğin, Flutter Uygulamaları için şunlardan birini yapabilirsiniz:
  • Flutter aracılığıyla release derlemesi kullanın, örneğin flutter run --release (fiziksel cihaz gerektirir)
  • Xcode şemasını Debug yerine Release olarak güncelleyin

İlgili sayfalar


SSS

Uygulamamda OneSignal App ID’mi değiştirirsem ne olur?

Uygulamanızın başlatma kodunda OneSignal App ID’yi değiştirmek, kullanıcı uygulamayı güncellediğinde ve en son sürümü açtığında yeni App ID altında yepyeni bir kullanıcı ve push aboneliği oluşturacaktır. iOS bundle ID’niz ve/veya Android package ID’niz aynıysa, cihaz aynı push abonelik durumuyla devam edecektir. Kullanıcı verileri yepyeni olacaktır, yani takma adlarınızı, etiketlerinizi, e-posta adresinizi, telefon numaranızı yeni kayda geri eklemeniz gerekecektir. iOS bundle ID veya Android package ID farklıysa, bu yepyeni bir uygulamadır ve farklı push sertifikalarına/anahtarlarına sahip olmalıdır.

OneSignal, şirket içi kapalı ağda push bildirimleri gönderebilir mi?

Bu, kapalı ağınızdaki bilgisayarların desteklemek istediğiniz push ağ geçidi sunucularına erişimi olduğu sürece çalışabilir: Ağ İnternet’ten tamamen kopuksa, push bildirimleri, desteklediğimiz standart işletim sistemi/tarayıcı hizmetleri aracılığıyla iletilemez.