Ich möchte in der Lage sein, Push-Benachrichtigungen mit Titanium und Arrow Push auf Android zu senden.Appcelerator/Titanium: Kann keine Push-Benachrichtigung an Android senden
Ich habe die Anweisungen hier folgen:
Subscribing to push notifications
Mein einfachen Code sieht wie folgt aus:
var CloudPush = require('ti.cloudpush');
var deviceToken = null;
// Works fine
CloudPush.retrieveDeviceToken({
success: function() {
deviceToken = e.deviceToken;
alert('deviceToken: ' + deviceToken);
subscribeToChannel();
},
error: function() {
alert('Failed to register for push notifications! ' + e.error);
}
});
// Never runs!!!
CloudPush.addEventListener('callback', function (evt) {
Ti.API.info('New notification!');
alert("Notification received: " + evt.payload);
});
// Works fine
function subscribeToChannel() {
Cloud.PushNotifications.subscribeToken({
device_token: deviceToken,
channel: 'general',
type: Ti.Platform.name
}, function (e) {
if (e.success) {
alert('Subscribed');
} else {
alert('Error:\n' + ((e.error && e.message) || JSON.stringify(e)));
}
});
}
der oben meisten Code ähnelt den Dokumenten. Der Subskriptionsaspekt des Codes scheint einwandfrei zu funktionieren, da das Gerät des Benutzers auch im Gerätebereich des Appcelerator-Dashboards angezeigt wird.
Wenn es jedoch zu kommt, sendet eine Meldung aus dem Appcelerator-Dashboard das Wort "Fehler" neben meinem Android-Gerät.
Die vollständige Fehlermeldung, wenn Hervorhebung der "?" Symbol ist wie folgt:
Ausnahmetyp: GCM; Fehlercode: 3103; Fehlermeldung: RegistrationId (s) ist null oder leer; Catched Ausnahme: Argument kann nicht
Ich sah diesen Fehler null bis auf http://docs.appcelerator.com/arrowdb/latest/#!/guide/troubleshooting und alles was man sagt, ist:
Der GCM-Client eine null oder leer Registrierungs-ID versehen. Dieser Fehler ist ungewöhnlich, wenn Sie das Module.CloudPush-Modul verwenden.
Das ist nicht hilfreich.
Was mache ich falsch? Ist das ein Fehler auf der Accelerator-Seite?
Das ist nicht das Problem. Das Geräte-Token ist eine globale Variable, die hier in Ordnung ist. In der Tat hat es sogar gut abonniert sowie es ist auf der Geräteliste –
Ich denke, das Problem ist, wo ich meine Anmeldeinformationen bekam, da die Dokumentation veraltet scheint. Wo hast du deine bekommen? –
@YahyaUddin Dies ist ein Ausschnitt aus den Notizen, die ich im letzten Jahr gemacht habe - Ein Google API-Projekt erstellen Der erste Schritt besteht darin, ein Google API-Projekt zu erstellen und dessen GCM-Dienst zu aktivieren. Sie müssen außerdem eine GCM-Absender-ID abrufen und einen Google API-Serverschlüssel erstellen. ein neues Projekt von hier erstellen: https://console.developers.google.com/project GO TO API-Manager Credentials - API-Schlüssel erstellen - kopieren und in das Hamburger Menü Pfeil Armaturenbrett Klick einfügen - IAM & Admin Einstellungen - Kopieren Sie die Projektnummer - fügen Sie diese in das Arrow-Dashboard ein Ist es das, worauf Sie sich beziehen? –