Push-Benachrichtigungs-API (OneSignal, Firebase, Pushwoosh)
Sende Push-Benachrichtigungen an deine Android-App-Nutzer 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 dafür nicht geöffnet sein. 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.
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 (wie im Beispielcode), Erinnerungen, ...).
Um alle geplanten lokalen Push-Benachrichtigungen abzubrechen, verwende:
<script>
window.location.href = "sendlocalpushmsg://push.send.cancel";
</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.java, indem du PUSHWOOSH_ENABLED auf true setzt, und stelle sicher, dass du auch die Pushwoosh-IDs in den Dateien string.xml und AndroidManifest.xml mit deinen eigenen Pushwoosh-IDs aktualisierst:


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 WONDERPUSH_ENHANCE_WEBVIEW_URL in Config.java 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 für die Konfiguration von Remote-Push-Benachrichtigungen verwenden möchtest, führt dich dieses Video-Tutorial Schritt für Schritt durch den Prozess.
Zusammengefasst verläuft die Konfiguration von OneSignal für Push-Benachrichtigungen wie folgt:
- Öffne Android Studio und suche die OneSignal-Optionen. Standardmäßig sind PUSH_ENABLE, PUSH_ENHANCE_WEBVIEW_URL und PUSH_RELOAD_ON_USERID auf false gesetzt; ändere diese auf true.
- Öffne dein OneSignal-Konto und wähle deine Organisation und deinen App-Namen aus.
- Falls du deine App im OneSignal-Projekt noch nicht angelegt hast, folge zunächst diesen Schritten.
Ersetze ic_stat_onesignal_default.png, um das Standard-Fallback-Glockensymbol der OneSignal-Push-Benachrichtigungen zu ersetzen.
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 PUSH_ENHANCE_WEBVIEW_URL in Config.java (indem du den Wert von false auf true änderst), 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,
AUTO_INJECT_VARIABLES in Config.java 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
Wenn du Firebase für die Konfiguration von Remote-Push-Benachrichtigungen verwenden möchtest, führt dich dieses Video-Tutorial Schritt für Schritt durch den Prozess.
Zusammengefasst verläuft die Konfiguration von Firebase für Push-Benachrichtigungen wie folgt:
1. Paketnamen umbenennen und Firebase-Projekt erstellen
Bitte benenne den Paketnamen deiner WebViewGold-Android-App um. Anschließend musst du in deiner Firebase-Konsole ein Firebase-Projekt erstellen.
2. Firebase in WebViewGold aktivieren
Öffne in Android Studio die Datei Config.java und setze die Variable FIREBASE_PUSH_ENABLED auf true.

3. Deine App bei Firebase registrieren
Nachdem du dein Firebase-Projekt erstellt hast, kannst du deine WebViewGold-App hinzufügen.
a. Klicke in der Mitte der Projektübersichtsseite der Firebase-Konsole auf das Android-Symbol, um den Einrichtungsprozess zu starten.
b. Wenn du deinem Firebase-Projekt bereits eine App hinzugefügt hast, klicke auf App hinzufügen, um die Plattformoptionen anzuzeigen.
Gib den Paketnamen deiner App ein, wie er in diesem Schritt geändert/definiert wurde.
Stelle sicher, dass du den Paketnamen eingibst, den deine App verwendet. Du kannst diesen Wert nach der Registrierung deiner App bei deinem Firebase-Projekt nicht mehr hinzufügen oder ändern.
4. Klicke auf die Schaltfläche App registrieren.
5. google-services.json herunterladen
Klicke auf „google-services.json herunterladen", um deine Firebase-Android-Konfigurationsdatei (google-services.json) zu erhalten, und ersetze die im WebViewGold-Projekt bereits enthaltene Beispieldatei mit Hilfe des Mac Finders oder des Windows Explorers:

Das war's!
Wenn du das Firebase-URL-Deeplinking verwenden möchtest (öffnet eine bestimmte URL beim Klicken auf deine Benachrichtigung), füge bitte die gewünschte URL in einem Custom Data-Feld (im Bereich Additional options (optional)) mit Key = „url" und Value = {die gewünschte URL} hinzu.

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 FIREBASE_PUSH_ENHANCE_WEBVIEW_URL in Config.java (indem du den Wert von false auf true änderst), 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,
AUTO_INJECT_VARIABLES in Config.java 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).
Push-Berechtigungs-APIs: Im richtigen Moment fragen & aktuellen Status prüfen
Push-Berechtigung manuell anfordern (registerpush://)
Standardmäßig fragt WebViewGold den Nutzer beim ersten Start der App nach der Berechtigung für Push-Benachrichtigungen (requirePush = true in Config.java). Berechtigungsabfragen konvertieren deutlich besser, wenn sie im passenden Kontext erscheinen – du kannst requirePush daher auch auf false setzen und den nativen Berechtigungsdialog im perfekten Moment aus deiner Web-App auslösen (z. B. nach dem Login oder Onboarding):
<a href="registerpush://">Benachrichtigungen aktivieren</a>
window.location.href = "registerpush://";
Hinweis: Dafür muss mindestens ein Push-Dienst in Config.java aktiviert sein (PUSH_ENABLED, FIREBASE_PUSH_ENABLED oder PUSHWOOSH_ENABLED).
Aktuellen Push-Berechtigungsstatus prüfen (checkNativePushPermissions://)
Um herauszufinden, ob der Nutzer Push-Benachrichtigungen aktuell erlaubt, rufe auf:
window.location.href = "checkNativePushPermissions://";
WebViewGold injiziert anschließend die JavaScript-Variable nativePushEnabled (true oder false) in deine Seite. Ab Android 13 müssen sowohl die System-Benachrichtigungseinstellung als auch die Laufzeitberechtigung POST_NOTIFICATIONS erteilt sein, damit der Wert true ist. Beispiel:
<script>
window.location.href = "checkNativePushPermissions://";
setTimeout(function () {
if (typeof nativePushEnabled !== "undefined" && nativePushEnabled) {
console.log("Push-Benachrichtigungen sind aktiviert");
} else {
// z. B. eigenen Hinweis anzeigen und registerpush:// oder settingsapp:// anbieten
}
}, 500);
</script>
Wurde die Berechtigung dauerhaft verweigert, kannst du den Nutzer über die Open-App-Settings-API (settingsapp://) in die Systemeinstellungen führen.