React Native SDK: Grundlegende Integrationsanleitung
Dieser Abschnitt enthält Informationen zur Integration des Pushwoosh React Native SDK in Ihre Anwendung.
Voraussetzungen
Anchor link toUm das Pushwoosh React Native SDK in Ihre App zu integrieren, benötigen Sie Folgendes:
Integrationsschritte
Anchor link to1. Abhängigkeit des Pushwoosh React Native SDK hinzufügen
Anchor link toFügen Sie die Abhängigkeit des Pushwoosh React Native SDK zu Ihrem Projekt hinzu:
npm install pushwoosh-react-native-plugin --save2. Initialisierung des React Native SDK
Anchor link toIn der Root-Komponente Ihrer index.js-Datei:
- Importieren Sie das
pushwoosh-react-native-plugin. - Initialisieren Sie das Pushwoosh SDK.
- Rufen Sie
register()in Ihrer Initialisierungslogik auf, um sich für Push-Benachrichtigungen zu registrieren.
import Pushwoosh from 'pushwoosh-react-native-plugin';
AppRegistry.registerComponent(appName, () => App);
Pushwoosh.init({ "pw_appid" : "__YOUR_APP_ID__" , "project_number" : "__YOUR_FCM_SENDER_ID__"});
Pushwoosh.register();Wobei:
__YOUR_APP_ID__der Anwendungscode aus dem Pushwoosh Control Panel ist.__YOUR_FCM_SENDER_ID__die Firebase-Projektnummer aus der Firebase Console ist.
3. Natives iOS-Setup
Anchor link to3.1 Capabilities
Anchor link toUm Push-Benachrichtigungen in Ihrem Projekt zu aktivieren, müssen Sie bestimmte Capabilities hinzufügen.
Fügen Sie im Abschnitt „Signing & Capabilities“ die folgenden Capabilities hinzu:
Push NotificationsBackground Modes. Aktivieren Sie nach dem Hinzufügen dieser Capability das Kontrollkästchen fürRemote notifications.
Wenn Sie Time Sensitive Notifications (iOS 15+) verwenden möchten, fügen Sie auch die Capability Time Sensitive Notifications hinzu.
3.2 Info.plist
Anchor link toSetzen Sie in Ihrer Runner/Info.plist den Schlüssel __PUSHWOOSH_DEVICE_API_TOKEN__ auf das Pushwoosh-Geräte-API-Token:
<key>Pushwoosh_API_TOKEN</key><string>__PUSHWOOSH_DEVICE_API_TOKEN__</string>3.3 Nachverfolgung der Nachrichtenzustellung
Anchor link toSie müssen Ihrem Projekt ein „Notification Service Extension“-Ziel hinzufügen. Dies ist für eine genaue Zustellungsverfolgung und Funktionen wie Rich Media unter iOS unerlässlich.
Befolgen Sie die Schritte der nativen Anleitung, um das Erweiterungsziel und den darin erforderlichen Pushwoosh-Code hinzuzufügen.
3.4 Installation von Abhängigkeiten für das iOS React Native-Projekt
Anchor link toUm Abhängigkeiten für das iOS React Native-Projekt zu installieren, navigieren Sie im Terminal zum Ordner ios und führen Sie Folgendes aus:
pod install --repo-update4. Natives Android-Setup
Anchor link to4.1 Abhängigkeiten installieren
Anchor link toStellen Sie sicher, dass die erforderlichen Abhängigkeiten und Plugins zu Ihren Gradle-Skripten hinzugefügt werden:
Fügen Sie das Google Services Gradle-Plugin zu den Abhängigkeiten Ihrer build.gradle-Datei auf Projektebene hinzu:
buildscript { dependencies { classpath 'com.google.gms:google-services:4.3.15' }}Wenden Sie das Plugin in Ihrer build.gradle-Datei auf App-Ebene an:
apply plugin: 'com.google.gms.google-services'4.2 Firebase-Konfigurationsdatei hinzufügen
Anchor link toPlatzieren Sie die Datei google-services.json in den Ordner android/app in Ihrem Projektverzeichnis.
4.3 Pushwoosh-Metadaten hinzufügen
Anchor link toFügen Sie in Ihrer main/AndroidManifest.xml das Pushwoosh-Geräte-API-Token innerhalb des <application>-Tags hinzu:
<meta-data android:name="com.pushwoosh.apitoken" android:value="__YOUR_DEVICE_API_TOKEN__" />Wichtig: Stellen Sie sicher, dass Sie dem Token im Pushwoosh Control Panel Zugriff auf die richtige App gewähren. Erfahren Sie mehr
5. Projekt ausführen
Anchor link to- Erstellen Sie das Projekt und führen Sie es aus.
- Gehen Sie zum Pushwoosh Control Panel und senden Sie eine Push-Benachrichtigung.
- Sie sollten die Benachrichtigung in der App sehen.
Erweiterte Integration
Anchor link toIn dieser Phase haben Sie das SDK bereits integriert und können Push-Benachrichtigungen senden und empfangen. Lassen Sie uns nun die Kernfunktionalität erkunden.
Event-Listener für Push-Benachrichtigungen
Anchor link toIm Pushwoosh SDK gibt es zwei Event-Listener, die für die Handhabung von Push-Benachrichtigungen konzipiert sind:
- Das
pushReceived-Event wird ausgelöst, wenn eine Push-Benachrichtigung empfangen wird. - Das
pushOpened-Event wird ausgelöst, wenn ein Benutzer eine Benachrichtigung öffnet.
Sie sollten diese Event-Listener direkt nach der Initialisierung des SDK beim Start der Anwendung einrichten:
import {DeviceEventEmitter} from 'react-native'import Pushwoosh from 'pushwoosh-react-native-plugin';
class PushwooshNotificationHandler { setupPushListeners() {
DeviceEventEmitter.addListener('pushReceived', (e) => { console.warn("Push received: " + JSON.stringify(e)); });
DeviceEventEmitter.addListener('pushOpened', (e) => { console.warn("Push accepted: " + JSON.stringify(e)); });
}}Benutzerkonfiguration
Anchor link toIndem Sie sich auf das individuelle Benutzerverhalten und die Vorlieben konzentrieren, können Sie personalisierte Inhalte liefern, was zu einer erhöhten Benutzerzufriedenheit und -loyalität führt.
import Pushwoosh from 'pushwoosh-react-native-plugin';
class Registration { afterUserLogin(user: User) {
// Set user ID Pushwoosh.setUserId(user.getId());
// Set user email Pushwoosh.setEmails(user.getEmailList());
// Set user SMS number Pushwoosh.registerSMSNumber(user.getPhoneNumber());
// Set user WhatsApp number Pushwoosh.registerWhatsappNumber(user.getWhatsAppNumber());
// Setting additional user information as tags for Pushwoosh Pushwoosh.setTags({ "age": user.getAge(), "name": user.getName(), "last_login": user.getLastLoginDate() }); }}Tags
Anchor link toTags sind Schlüssel-Wert-Paare, die Benutzern oder Geräten zugewiesen werden und eine Segmentierung basierend auf Attributen wie Vorlieben oder Verhalten ermöglichen, was gezielte Nachrichtenübermittlung ermöglicht.
import Pushwoosh from 'pushwoosh-react-native-plugin';
class UpdateUser { afterUserUpdateProfile(user: User) {
// Set list of favorite categories Pushwoosh.setTags({ "favorite_categories": user.getFavoriteCategoriesList() });
// Set payment information Pushwoosh.setTags({ "is_subscribed": user.isSubscribed(), "payment_status": user.getPaymentStatus(), "billing_address": user.getBillingAddress() }); }}Events
Anchor link toEvents sind spezifische Benutzeraktionen oder Vorkommnisse innerhalb der App, die verfolgt werden können, um das Verhalten zu analysieren und entsprechende Nachrichten oder Aktionen auszulösen.
import Pushwoosh from 'pushwoosh-react-native-plugin';
class Registration {
// Track login event afterUserLogin(user: User) { Pushwoosh.postEvent("login", { "name": user.getName(), "last_login": user.getLastLoginDate() }); }
// Track purchase event afterUserPurchase(product: Product) { Pushwoosh.postEvent("purchase", { "product_id": product.getId(), "product_name": product.getName(), "price": product.getPrice(), "quantity": product.getQuantity() }); }}Fehlerbehebung
Anchor link toSollten während des Integrationsprozesses Probleme auftreten, lesen Sie bitte den Abschnitt Support und Community.