Ich baue gerade eine Android-Anwendung mit ionic/ngcordova. Ich bin gerade dabei, Push-Benachrichtigungen zu implementieren. Ich habe Push-Benachrichtigungen als ein Dienst implementiert, der bei app.run(function(){..})
Stufe injiziert wird. Der Registrierungsteil funktioniert und ich erhalte einen Rückruf, der die regid
enthält. Wenn sich die Anwendung im aktiven Zustand befindet, wird das Ereignis ausgelöst und die Benachrichtigung wird empfangen.ngCordova/Ionic Push Benachrichtigungen, wenn die Anwendung im Hintergrund ist
Das Problem, das ich habe, ist, dass wenn die Anwendung in den Hintergrund tritt, die Benachrichtigungen überhaupt nicht empfangen werden. Ich würde erwarten, dass eine lokale Benachrichtigung ausgelöst wird, wenn die App nicht läuft oder etwas ähnliches, aber absolut nichts passiert, was seltsam ist.
Ich habe das Web in den letzten Tagen auf der Suche nach einer Lösung durchforstet, aber ich konnte nichts finden, was mir anzeigt, dass es einfach funktionieren sollte.
Das Folgende ist meine notificationService.js in meinem app
app.factory('notificationService', ['$cordovaPush', function($cordovaPush){
var dataFactory = {};
//
// When the device is ready and this service has been plumbed in...
document.addEventListener("deviceready", function(){
console.log("initializing push notifications...");
_register();
}, false);
//
// Registers the device for push notifications...
var _register = function(){
var config = {};
if (device.platform == 'android' || device.platform == 'Android' || device.platform == "amazon-fireos"){
// TODO: centralise this value as it can change...
config = {
senderID: "448168747432",
ecb: "onNotificationGCM"
};
}else {
// iOS
config = {
"badge":"true",
"sound":"true",
"alert":"true"
};
// Can add the following property to the config object to raise a callback with the information if need be...
// "ecb": "onNotificationRegisterAPN"
}
$cordovaPush.register(config).then(function(result){
//
// Typically returns "ok" for android and devicetoken for iOS
console.log(result);
});
};
window.onNotificationGCM = function(result){
console.log(result);
/*
I get called when the app is in the foreground, but nothing happens when the app is in the background.
*/
};
dataFactory.register = _register;
return dataFactory;
}]);
Wenn es hilft, ich bin mit PushSharp über eine .net-Anwendung, um die Meldungen zu liefern. Jede Hilfe würde sehr geschätzt werden.
UPDATE: ich die folgenden Frameworks/libs bin mit:
- Ionic Rahmen 1.2.14-beta6
- Cordova 4.2.0
- PushPlugin