• 20-01-2026, 18:59:10
    #1
    Merhaba,

    Bir projede web panel + mobil uygulama (WebView) yapısı var.

    Web tarafında push bildirimler;
    - Service Worker
    - Web Push (OneSignal Web SDK)
    üzerinden çalışıyor.

    Mobil uygulama ise:
    - React Native
    - WebView içinde web paneli açıyor
    - Native OneSignal SDK kullanılıyor.

    Sorum şu:
    Web tarafında tetiklenen push bildirimleri
    (Web push / service worker üzerinden çalışanlar)
    WebView içinde veya arka planda yakalanıp
    mobil uygulamaya (native OneSignal push) yönlendirilebilir mi?

    Araştırdığım kadarıyla:
    - WebView service worker desteklemiyor
    - Web push ve mobile push altyapıları farklı
    - Web push’u “dinleyip” mobile forward etmek mümkün görünmüyor

    Bu durumda doğru yaklaşım:
    - Push’ları backend (Firebase / API) üzerinden tek noktadan tetiklemek
    - Web ve mobil için ayrı push kanalı kullanmak mı?

    Daha önce bu senaryoyu yaşayan oldu mu?
    Net olarak “olur / olmaz” diyecek teknik bir cevap arıyorum.

    Teşekkürler.
  • 20-01-2026, 19:01:33
    #2
    ChatGPT;

    mümkün ama “tek tıkla doğrudan WebView içinden mobil push’a çevir” gibi otomatik bir köprü yok. Mantık şu: Web push (browser/Service Worker tabanlı) ile mobil push (FCM/APNs tabanlı) farklı dünyalar; WebView genelde Web Push altyapısını tam desteklemez. Çözüm, web tarafındaki bildirimi uygulamanın native push sistemine “taşımak”.
    Aşağıda pratik yollar (en çok kullanılan 2 yöntem):
    1) WebView → Native “subscribe” köprüsü (en temiz yaklaşım)
    • Web sayfanda “Bildirimleri aç” butonuna basılınca:
      • WebView içinden native’e mesaj gönderirsin (JS bridge).
      • Uygulama tarafı FCM token alır.
      • Token’ı backend’e kaydedersin.
    • Sonra web tarafındaki “push gönder” olayında, backend Web Push yerine (veya yanında) FCM/APNs ile telefona push yollar.
    Android: addJavascriptInterface / WebMessageListener
    iOS: WKScriptMessageHandler
    Bu yöntemde web siten “web push aboneliği” yerine, “mobil push aboneliği” almış olur.
    2) Backend’de “fan-out” (web push geldiğinde mobile da gönder)

    Web push tetikleyen bir event’in varsa (sipariş durumu, mesaj vb):
    • O event zaten backend’de oluşuyorsa, aynı event için:
      • Web kullanıcılarına Web Push
      • Mobil uygulama kullanıcılarına FCM/APNs
      • (istersen e-posta / SMS)
        gibi çoklu kanal gönderimi yaparsın.
    Burada WebView’ın push desteklemesine bile gerek kalmıyor; her şey backend’de çözülüyor.
    “Web push bildirimi geldi, WebView yakalayıp mobile yönlendirsin” kısmı neden zor?

    Web push, tarayıcıda Service Worker üzerinden çalışır. WebView:
    • çoğu senaryoda Service Worker / Push API’yi ya hiç desteklemez ya da kısıtlı destekler,
    • bu yüzden “web push geldi -> WebView JS yakalasın” güvenilir olmaz.
    En kısa öneri

    eğer uygulama zaten varsa:
    WebView içinden native push aboneliği al (FCM/APNs) + backend’den mobile push gönder en stabil yol.
  • 20-01-2026, 19:01:48
    #3
    ᴀɪ ꜱᴘᴇᴄɪᴀʟɪꜱᴛ💎
    Backend-driven push yapacaksın, başka yolu yok. Web push'u mobilde "yakalamak" teknik olarak imkansız.
  • 20-01-2026, 19:05:07
    #4
    softwar adlı üyeden alıntı: mesajı görüntüle
    ChatGPT; bla bla bla.
    Hocam şu GPT ye soru sorup konuya yazmayın ya konu sahibi yazmıştır fikri olanlara erişmek için konu açıyolar ya falan filan
  • 20-01-2026, 19:07:01
    #5

    1) WebView → Native “subscribe” köprüsü (en temiz yaklaşım)

    • Web sayfanda “Bildirimleri aç” butonuna basılınca:
      • WebView içinden native’e mesaj gönderirsin (JS bridge).
      • Uygulama tarafı FCM token alır.
      • Token’ı backend’e kaydedersin.
    • Sonra web tarafındaki “push gönder” olayında, backend Web Push yerine (veya yanında) FCM/APNs ile telefona push yollar.
    Android: addJavascriptInterface / WebMessageListener
    iOS: WKScriptMessageHandler bunu demiş hocam yapay zeka ama ios da tıkanacak muhtemelen