2017-07-01 3 views
0

Ich versuche, VoIP-Benachrichtigungen über PushKit zu senden, aber in der Produktionsumgebung (Distribution) erhalte ich "Ungültiges Token" vom Server."Ungültiges Token" beim Senden der PushKit-Benachrichtigung in der Produktionsumgebung

alles funktioniert in Entwicklung env mit demselben Zertifikat und URL fein: ssl://gateway.sandbox.push.apple.com mit Port: 2195 , aber wenn ich die URL zu ändern: ssl://gateway.push.apple.com, erhalte ich „Invalid Token“ Fehler ohne zusätzliche Daten

+0

Überprüfen Sie Ihre P12-Datei ist es für die Entwicklung oder Verteilung –

+0

@AbhishekThapliyal Es gibt nur eine Art von Zertifikat für 'VoIP-Dienste-Zertifikat' und das Zertifikat sollte für beide envs funktionieren. –

+0

Bitte überprüfen Sie noch einmal als Apple haben diese Verteilung und Entwicklungszertifikate sogar normale APNS haben zwei Arten Verteilung und Entwicklung –

Antwort

0

aussehen wie du verwenden dasselbe Voip-Geräte-Token, das vom Client in der Sandbox-Umgebung sowohl für die Sandbox als auch für die Produktion generiert wurde. Aus diesem Grund erhalten Sie einen ungültigen Token-Fehler.

Dies wird nicht funktionieren. Wenn Sie die Produktionsumgebung verwenden möchten, müssen Sie sicherstellen, dass Ihr Client/Ihre App das Geräte-Token in der Produktionsumgebung erstellt. (Sie können Geräte-Token nicht verwenden, die von einem Client generiert wurden, der Sandbox verwendet, wenn Ihr Server die Produktionsumgebung verwendet.)

Pl. Beachten Sie, dass separate Geräte-Tokens für die Sandbox/Produktionsumgebung für die gleiche App/den gleichen Client auf demselben Gerät generiert werden. Ich hoffe es hilft.

+0

Danke für deine Antwort, aber ich benutze bereits Produktionstoken in der Produktion env, ich habe auch seltsames Verhalten festgestellt, für einige Token bekomme ich dieses Invalid Token nicht Error. Ich habe versucht, push an drei verschiedene Geräte zu senden (an ihre Produktionstoken, alles installiert von testFlight), für zwei von ihnen bekomme ich den Fehler, aber für einen anderen ist es erfolgreich! –

+0

Ungültiger Token-Fehler wird vom Produktions-APNS nur zurückgegeben, wenn dieses Token keinem Gerät von diesem Produktionsserver zugewiesen wurde. Wenn Sie sicher sind, dass die Client-App dieses Geräte-Token nur mit Produktiv-APNS angefordert hat, kann APNS die Benachrichtigung für dieses Ziel weiterleiten. Das ist seltsam. Darf nicht passieren. Was Sie sagen, ist, wenn es wahr ist, scheint es, ein Gerät-Token-Synchronisierungsproblem bei APNS-Servern zu sein (was wir nicht von Apple-Servern erwarten). – Ayush

+0

Ich würde auch vorschlagen, Sie stellen sicher, dass Ihre App kein Geräte-Token zwischenspeichert. Es könnte passieren, dass Ihre App kein neues Produktionsgeräte-Token registrieren konnte und es im Cache zwischengespeichert wurde. (Nur eine Schätzung). Ich glaube, Sie haben sichergestellt, dass alle Ihre Geräte (Apps) nur mit dem Produktionszertifikat gebündelt sind. – Ayush

Verwandte Themen