Push-Benachrichtigungen-API (OneSignal, Firebase, Pushwoosh)
Sende Push-Benachrichtigungen an die Nutzer deiner iOS-App mit OneSignal, Firebase oder Pushwoosh – Einrichtung, Deep Links und nutzerspezifisches Targeting erklärt.
Push-Benachrichtigungen sind Benachrichtigungen, die auf deinem Smartphone erscheinen, ohne dass die App geöffnet werden muss. Diese Art von Nachrichten ermöglicht eine hervorragende Interaktion mit Kunden und Nutzern der App. Deine App muss nicht geöffnet sein, um solche Benachrichtigungen zu empfangen. Auf diese Weise verpassen deine Kunden keine wichtigen Neuigkeiten oder Nachrichten. Push-Benachrichtigungen eignen sich für viele Anwendungsfälle, z. B. für Bestellaktualisierungen, Live-Ticker oder Social-Media-Communities. Für den Empfang von Push-Nachrichten muss eine Internetverbindung vorhanden sein. WebViewGold unterstützt mehrere Wege, um deine Nutzer per Push-Benachrichtigung zu erreichen. Wenn du Push-Benachrichtigungen NICHT verwenden möchtest, öffne Config.swift und setze askforpushpermissionatfirstrun auf false, um zu verhindern, dass der App-Nutzer nach der Benachrichtigungsberechtigung gefragt wird.
Option 1: Lokale Push-Benachrichtigung per JavaScript-API verwenden
Du kannst ein Code-Snippet (JavaScript) in deine Website einfügen, um eine Push-Benachrichtigung zu definieren, die nach dem Schließen deiner App angezeigt werden kann (die Planung erfolgt, während die App geöffnet ist). Dies funktioniert ganz ohne OneSignal-Konfiguration.
<script>
var title = "Your cart is waiting!"; //notification title
var message = "You have left a cart full of dreams and deals behind. Dont leave it feeling abandoned"; //notification message
var seconds = 120; //seconds from now on
var url = "https://myshop.org/cart.php"; //deep-linking URL
window.location.href = "sendlocalpushmsg://push.send?s="+ seconds +"=msg!"+ message +"&!#"+ title +"&!#"+ url +"";
</script>
Dies kann für verschiedene Situationen genutzt werden (Countdowns, Happy Hours, spezielle Erinnerungen, ...).
Um alle geplanten lokalen Push-Benachrichtigungen zu abbrechen, verwende:
<script>
window.location.href = "sendlocalpushmsg://push.send.cancel";
</script>
Nativen Push-Berechtigungsstatus prüfen
Rufe checkNativePushPermissions:// auf, um zu prüfen, ob der Nutzer die native iOS-Mitteilungsberechtigung erteilt hat. Das Ergebnis wird als JavaScript-Variable nativePushEnabled (true oder false) in deine Web-App injiziert — nützlich z. B., um einen eigenen Hinweis mit Link zu den App-Einstellungen anzuzeigen, wenn Mitteilungen deaktiviert sind:
<script>
window.location.href = "checkNativePushPermissions://";
setTimeout(function() {
if (typeof nativePushEnabled !== "undefined" && !nativePushEnabled) {
// z. B. einen Banner mit Link zu settingsapp:// anzeigen
}
}, 500);
</script>Option 2: Pushwoosh Remote-Push-Benachrichtigungen verwenden
WebViewGold-Nutzer erhalten zwei Monate Pushwoosh kostenlos!
Um dieses Angebot in Anspruch zu nehmen, sende bitte deine WebViewGold-Lizenz per E-Mail an [email protected] und du erhältst in Kürze eine persönliche Antwort.
Wenn du Pushwoosh (eine ausgezeichnete Wahl!) für Push-Benachrichtigungen in deiner App verwenden möchtest, aktiviere einfach die Optionen in Config.swift, indem du kPushwooshEnable auf true setzt, und stelle sicher, dass du auch die Pushwoosh_APPID in der Datei Info.plist mit deiner eigenen Pushwoosh-Application-ID aktualisierst.

Stelle sicher, dass du auch die Pushwoosh-Einrichtung auf deren Website einschließlich des Zertifikatsimports abschließt.
Glückwunsch, deine Einrichtung ist bereits abgeschlossen. Du bist nun bereit, Push-Benachrichtigungen zu versenden:

Möchtest du die individuelle Geräte-ID jedes Nutzers für personalisierte Push-Benachrichtigungen oder zur weiteren Verarbeitung erhalten? Setze einfach kPushwooshEnhanceUrl in Config.swift auf true, um ?pushwoosh_id=XYZ an deine WebView-URL anzuhängen:
Wenn deine WebView-URL beispielsweise https://www.example.org lautet, ruft WebViewGold stattdessen https://www.example.org?pushwoosh_id=XYZ auf. Denke daran, dass nur die erste URL-Anfrage diese GET-Variable erhält. Bitte speichere diese daher in einer Session oder einem Cookie zur späteren Verwendung auf deinen verlinkten Seiten. Alternativ oder zusätzlich kannst du diese Information auf jeder Seite per JavaScript abrufen und verarbeiten:
<script> window.location.href = "getpushwooshid://"; alert(pushwooshplayerid); </script>
Option 3: OneSignal Remote-Push-Benachrichtigungen verwenden
Wenn du OneSignal in deiner App verwenden möchtest, aktiviere diese Optionen in Config.swift (indem du die Werte von false auf true setzt) und stelle sicher, dass du auch den Platzhalter oneSignalID durch deine eigene ID ersetzt.

Generiere nun ein iOS-Push-Zertifikat und importiere es:

Super, du bist fertig. Du kannst nun Push-Benachrichtigungen versenden:

Wenn du das OneSignal-URL-Deeplinking verwenden möchtest (öffnet eine bestimmte URL beim Klicken auf deine Benachrichtigung), füge bitte die gewünschte URL in einem benutzerdefinierten Feld namens url hinzu:
Im OneSignal.com-Backend kannst du dieses Key-Value-Fenster ausfüllen, nachdem du auf „Advanced settings" geklickt hast. Mit der OneSignal-API kannst du das Feld „url" zur API-Anfrage hinzufügen (https://documentation.onesignal.com/docs/onesignal-api).
Möchtest du die individuelle Abonnement-ID jedes Nutzers auf deinem Server zur weiteren Verarbeitung und für individuelle Nutzer-Push-Nachrichten erhalten? Aktiviere einfach die Option kPushEnhanceUrl in Config.swift (indem du den Wert von false auf true setzt), um ?onesignal_push_id=XYZ an deine WebView-URL anzuhängen. Wenn deine WebView-URL https://www.example.org lautet, ruft WebViewGold stattdessen https://www.example.org?onesignal_push_id=XYZ auf. Nur die erste URL-Anfrage erhält diese GET-Variable. Speichere diese daher in einer Session oder einem Cookie, um auf deinen verlinkten Seiten darauf zugreifen zu können. Eine alternative oder zusätzliche Möglichkeit besteht darin, die Information auf jeder Seite per JavaScript abzurufen und zu verarbeiten:
<script> window.location.href = "getonesignalplayerid://"; alert(onesignalplayerid); </script>
Alternativ solltest du in Betracht ziehen,
autoInjectVariable in Config.swift auf true zu setzen, um diesen (und andere) Werte automatisch in JavaScript zu injizieren, ohne zuvor eine URL aufrufen zu müssen.
Option 4: Firebase Remote-Push-Benachrichtigungen verwenden
Schritt 1: Firebase-Projekt erstellen
Beginne mit der Erstellung eines Firebase-Projekts in deiner Firebase-Konsole. Dies ist eine Voraussetzung für die Integration von Firebase in deine WebViewGold-App.
Schritt 2: Deine App bei Firebase registrieren
Sobald dein Firebase-Projekt bereit ist, kannst du deine WebViewGold-App hinzufügen, indem du diese Schritte befolgst:
a. Navigiere zur Projektübersichtsseite in deiner Firebase-Konsole und wähle das iOS-Symbol, um den App-Registrierungsprozess zu starten.
b. Um eine neue App zu deinem Projekt hinzuzufügen, klicke auf App hinzufügen und wähle die Plattformoptionen aus. Gib im entsprechenden Feld die Bundle-ID deiner App ein. Diese ID ist entscheidend und lässt sich wie folgt ermitteln:
- Öffne dein App-Projekt in Xcode.
- Wähle den Projektnamen oben im Navigator aus, um zum Tab „General" zu gelangen.
- Die Bundle-ID deiner App wird unter dem Feld „Bundle Identifier" angezeigt (z. B. com.onlineappcreator.webviewgold).
Stelle sicher, dass du die exakte Bundle-ID eingibst, die deine App verwendet. Dieser Wert ist nach der Registrierung deiner App bei Firebase unveränderlich.
c. Schließe die Einrichtung ab, indem du die erforderlichen App-Informationen bereitstellst, u. a.:
- App-Nickname: Eine praktische Bezeichnung zu deiner Referenz in der Firebase-Konsole.
- App-Store-ID: Erforderlich für Firebase Dynamic Links und die Google-Analytics-Integration. Du kannst diese später hinzufügen, falls deine App noch keine besitzt.
Schritt 3: Deine App registrieren
Klicke auf App registrieren, um den Registrierungsprozess abzuschließen.
Schritt 4: GoogleService-Info.plist herunterladen
Lade diese Konfigurationsdatei herunter und ersetze den Platzhalter in deinem WebViewGold-Projekt durch die heruntergeladene GoogleService-Info.plist-Datei.
Schritt 5: Firebase in WebViewGold aktivieren
Setze in der Datei Config.swift die Variable kFirebasePushEnabled auf true, um die Firebase-Funktionen zu aktivieren.
Schritt 6: APN einrichten und App signieren
Generiere einen APN-Schlüssel für Firebase, lade ihn hoch und signiere dann deine App mit dem Firebase-Provisioning-Profil. Eine ausführliche Anleitung findest du in der Firebase-Dokumentation zu iOS-Zertifikaten.
Schritt 7: URL-Deeplinking implementieren (optional)
Um Firebase-URL-Deeplinking zu unterstützen, füge die Ziel-URL in einem Custom Data-Feld unter Additional options (optional) hinzu, mit Key = „url" und Value = {gewünschte URL}.

Um ein Firebase-Topic zu abonnieren, setze firebaseTopic in Config.swift auf den Namen des gewünschten Topics.
Möchtest du die individuelle Abonnement-ID jedes Nutzers auf deinem Server zur weiteren Verarbeitung und für individuelle Nutzer-Push-Nachrichten erhalten? Aktiviere einfach die Option kFirebaseEnhanceUrl in Config.swift (indem du den Wert von false auf true setzt), um ?firebase_push_id=XYZ an deine WebView-URL anzuhängen. Wenn deine WebView-URL https://www.example.org lautet, ruft WebViewGold stattdessen https://www.example.org?firebase_push_id=XYZ auf. Nur die ERSTE URL-Anfrage erhält diese GET-Variable. Speichere diese daher in einer Session oder einem Cookie, um auf deinen verlinkten Seiten darauf zugreifen zu können. Eine alternative oder zusätzliche Möglichkeit besteht darin, die Information auf jeder Seite per JavaScript abzurufen und zu verarbeiten:
<script> window.location.href = "getfirebaseplayerid://"; alert(firebaseplayerid); </script>
Alternativ solltest du in Betracht ziehen,
autoInjectVariable in Config.swift auf true zu setzen, um diesen (und andere) Werte automatisch in JavaScript zu injizieren, ohne zuvor eine URL aufrufen zu müssen.
Option 5: bubble.io Push-Benachrichtigungen verwenden
1. Erstelle eine bubble.io-App
2. Installiere das Plugin WebViewGold OneSignal Push:

3. Folge den OneSignal-Anweisungen (siehe oben) und den Plugin-Anweisungen (siehe hier und hier).