Ich habe einen Artikel geschrieben, um Push-Benachrichtigungen für iOS und Android zu erklären. Sehen Sie, wenn das nützlich ist Ionic 2 Push Notifications
Im Moment konnte ich keine Dokumentation auf Ionic 2 Website für Push-Benachrichtigung finden. Aber mit diesem Link Ionic 2 Push und Phonegap plugin push kann ich grundlegende Benachrichtigungen zumindest auf Android bekommen.
Ich habe folgenden Code in meinem MainApp Konstruktor
constructor(platform:Platform, private app:IonicApp) {
platform.ready().then(() => {
StatusBar.styleDefault();
});
var push = Push.init({
android: {
senderID: "YOUR_SENDER_ID"
},
ios: {
alert: "true",
badge: true,
sound: 'false'
},
windows: {}
});
push.on('registration', (data) => {
console.log("registraiton id " + data.registrationId);
});
push.on('notification', (data) => {
console.log(data.message);
console.log(data.title);
console.log(data.count);
console.log(data.sound);
console.log(data.image);
console.log(data.additionalData);
});
push.on('error', (e) => {
console.log(e.message);
});
}
Und auf Server-Seite, ich bin mit für Push-Benachrichtigung folgenden Code
var express = require('express');
var gcm = require('node-gcm');
var app = express();
var gcmApiKey = 'YOUR_GCM_API_KEY'; // GCM API KEY OF YOUR GOOGLE CONSOLE PROJECT
var server = app.listen(3000, function() {
console.log('server is just fine!');
});
app.get('/', function (req, res) {
res.send("This is basic route");
});
app.get('/push', function (req, res) {
var device_tokens = []; //create array for storing device tokens
var retry_times = 4; //the number of times to retry sending the message if it fails
var sender = new gcm.Sender(gcmApiKey); //create a new sender
var message = new gcm.Message(); //create a new message
message.addData('title', 'PushTitle');
message.addData('message', "Push message");
message.addData('sound', 'default');
message.collapseKey = 'Testing Push'; //grouping messages
message.delayWhileIdle = true; //delay sending while receiving device is offline
message.timeToLive = 3; //number of seconds to keep the message on
//server if the device is offline
//Take the registration id(lengthy string) that you logged
//in your ionic v2 app and update device_tokens[0] with it for testing.
//Later save device tokens to db and
//get back all tokens and push to multiple devices
device_tokens[0] = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
sender.send(message, device_tokens[0], retry_times, function (result) {
console.log('push sent to: ' + device_tokens);
res.status(200).send('Pushed notification ' + device_tokens);
}, function (err) {
res.status(500).send('failed to push notification ');
});
});
ich einen Thread Ionic 2 Push Thread auf Ionic Webseite für Push-Benachrichtigung gestartet Dokument, wenn Sie möchten, können Sie diesem Thread folgen.
Schritte zum Ausführen des Servers. Unter OS X müssen Sie möglicherweise folgende Befehle mit sudo
ausführen.
- Herunterladen NodeJS von NodeJs. Es installiert Knoten und Npm in Ihrem System.
npm install express-generator -g
express MySampleApp
cd MySampleApp
npm install --save node-gcm
npm install
- ändern Inhalt app.js mit über Code-Server und dann Server läuft mit folgendem Befehl
node app.js
Ich habe noch einen Zweifel in diesem Code, Sie erwähnten Sever-Side-Code, aber ich weiß nicht, wo dieser Sever-Side-Code zu verwenden ist. plzz sag mir, wo ich den Code verwenden soll –
@IdreamKannan Siehe die bearbeitete Antwort, um den Servercode auszuführen. – Ankush
@Ankush Sie haben nicht 'ion io init' Befehl verwendet bedeutet das, dass unsere App ohne diesen Befehl benachrichtigt wird (ich kann Ihrer Antwort wirklich nicht folgen) –