So implementieren Sie Pushwoosh mit ionic 2


Ramsha Omer

Ich möchte Pushwoosh in ionic 2 implementieren, ich verwende dieses Cordova-Plugin. Ich bin neu bei ionic 2 und möchte wissen, wie man Methoden aus diesem Plugin verwendet.

Benutzer1980927

Lesen Sie zuerst das Pushwoosh-Handbuch zur Verwendung des Cordova-Plugins: http://docs.pushwoosh.com/docs/cordova-phonegap

Danach habe ich diesen Code auf iOS und Android laufen lassen.

In Schritt 3 können Sie den folgenden Code als Dienstanbieter verwenden: In meinem Projektordner habe ich diese Datei erstellt: /src/app/providers/push-service.ts

import { Injectable } from "@angular/core";
import { Platform } from 'ionic-angular';
declare var cordova : any;

@Injectable()
export class PushService {

    PUSHWOOSH_APP_ID : string =  'XXXXX-XXXXX'; // your pushwoosh app id
    GOOGLE_PROJECT_NUMBER: string = 'XXXXXXXXXXXX'; // project number from firebase

    constructor(public platform : Platform){

        this.platform.ready().then(() => {
            if(this.platform.is('ios') || this.platform.is('android')){
                console.log("PushwooshService init: Running on push compatible platform "+ this.platform.userAgent() +')');
                this.initPushwoosh();
            } else{
                console.log("PushwooshService init: No compatible platform available.  Skipping init.)");
                return;
            }
        });


    }

    initPushwoosh(){
        let pushNotification = cordova.require("pushwoosh-cordova-plugin.PushNotification");

          //set push notifications handler
          document.addEventListener('push-notification', function (event) {
            let message = (event as any).notification.message; // Push message
            let userData = (event as any).notification.userdata; // Custom push data

            if (userData) {
            // handle custom push data here
            console.log('user data: ' + JSON.stringify(userData));
            }

          });

          //initialize Pushwoosh with projectid: "GOOGLE_PROJECT_NUMBER", pw_appid : "PUSHWOOSH_APP_ID". This will trigger all pending push notifications on start.
          pushNotification.onDeviceReady({
              appid: this.PUSHWOOSH_APP_ID,
              projectid: this.GOOGLE_PROJECT_NUMBER
              // serviceName: "MPNS_SERVICE_NAME"
          });

          //register for pushes
          pushNotification.registerDevice(
              function (status) {
                var pushToken = status;
                console.log(pushToken);
                alert('push token: ' + JSON.stringify(pushToken));
              },
              function (status) {
                alert(JSON.stringify(['failed to register ', status]));
              }
          );
    }

}

Jetzt können Sie diesen Anbieter in Ihre /src/app/app.component.ts importieren.

    import { PushService } from '../providers/push-service';

    @Component({
      templateUrl: 'app.html',
      providers: [PushService]
    })

Immer wenn Ihre App gestartet wird, wird Pushwoosh initialisiert.

Viel Glück ;)

Verwandte Artikel


So implementieren Sie ein ziehbares Div in Angular 2 mit Rx

Chris Ich habe versucht, ein ziehbares Div mit Angular 2 zum Laufen zu bringen. Ich verwende dieses Beispiel aus dem Angular2-Beispiel-Repo als Ausgangspunkt und passe den Code nur wirklich an, um das Entfernen der toRx()Methode zu berücksichtigen . Der Code f

So implementieren Sie PM2-Clustering mit WebSockets, Nodejs

Codierer Ich schreibe einen Echtzeit-Verbindungswebserver mit einer WebSocket (ws) -Bibliothek in Node js (Express). Wenn ich also einen Server im pm2-Clustermodus ausführe, funktioniert der Websocket nicht ordnungsgemäß. Gibt es eine Möglichkeit, Daten zwisch

So implementieren Sie 2D-Zugriff mit doppelten Klammern

Moleson Für meine eigene Klasse möchte ich den 2D-Zugriff mit doppelten Klammern unterstützen. Als gameInstanz der Klasse möchte ich Folgendes unterstützen: Einen Wert bekommen mit game[line][col]. Einstellen eines Wertes mit game[line][col] = val. Das interne

So implementieren Sie eine Animation in angle2 mit dart

Arash Kann mir jemand helfen zu verstehen, wie ich Angular2-Animationen in Dart verwenden kann? Die Dokumentation verweist auf eine AnimationBuilderKlasse, aber das konnte ich nicht einmal finden. Günter Zöchbauer Derzeit bietet Dart Angular2 keine Animationsu

So implementieren Sie Edge-Computing mit WSO2

Said Ich führe derzeit WSO2 Analytics auf einem Windows-Server aus, aber ich möchte den Analyseteil irgendwie implementieren, damit ein Client eine Verbindung zum Server herstellen und einige Verarbeitungen wie die Visualisierung selbst durchführen kann, ansta

So implementieren Sie eine konfigurierbare Tabelle mit Angular 2+

Mark Chidlow Ich versuche, eine Tabelle basierend auf einer JSON-Konfiguration zu generieren. Obwohl ich die Tabellenüberschriften OK erstellen kann, weiß ich nicht, wie ich die Zeilenzellendaten nach Feldnamen dynamisch auswählen kann. Das habe ich: columns =