2017-08-30 3 views
0

Ich arbeite gerade an einer iOS-App. Vor ein paar Tagen habe ich einen Apple-Account benutzt, der als Einzelperson registriert wurde. Um Benachrichtigungen zu erhalten, habe ich fastlane pem: https://github.com/fastlane/fastlane/tree/master/pem verwendet, um eine PEM-Datei zu erstellen. Diese Bibliothek generiert ein Zertifikat für Push-Benachrichtigungen (Typ: Apple Push Services) in Ihrem Apple-Konto. Diese PEM-Datei wurde zu unserem Server hinzugefügt und die Push-Benachrichtigungen funktionierten, ich erhielt sie.Erhalte nach dem Wechsel zu einem anderen Apple-Konto keine Push-Benachrichtigungen.

Wir wechselten jedoch zu einem neuen Apple-Konto, das als Einzelperson registriert wurde. Ich habe dieses Konto in XCode verwendet, eine neue App-ID (mit einer anderen Paket-ID) und Provision-Dateien erstellt. Ich habe erneut Fastlane pem verwendet, um eine neue PEM-Datei zu erstellen und die PEM-Datei auf dem Server aktualisiert. Aus irgendeinem Grund bekomme ich jetzt keine Benachrichtigungen. Wenn wir zum ersten Konto wechseln und die PEM-Datei erneut aktualisieren, funktioniert es wieder. Also, ich denke, es hat etwas mit dem neuen Apple-Konto zu tun.

Irgendeine Idee? Vielen Dank!

+0

scheint wie das Generieren von PEM mit neuer Anwendungs-ID. Sie müssen alle neuen cer wie Verteilung, Entwicklung neuer Push cer auch erzeugen. coz ne app id benutze alle cer. also folge dem gleichen Schritt, was du für alte App-ID mit neuen cer getan hast –

+0

Ich habe alle neuen Dateien erzeugt. Denn mit dem Apple Account habe ich ein anderes Entwicklerportal. So bin ich sicher, dass es neue Zertifikate gibt. Die Sache ist, ich habe die gleichen Schritte wie bei der alten App gemacht. –

+0

Ich muss das Produktionszertifikat verwenden, oder? Mit dem Typ "Apple Push Services" –

Antwort

1

Folgendes überprüfen:

  • Ist in Ihrem Xcode-Projekt aktiviert Push-?
  • Ist Push für die App in Ihrem Entwicklerportal aktiviert und ist das Zertifikat für Push gespeichert?
  • Sind die Zertifikate gültig? (Entwicklerportal)
  • Überprüfen Sie Ihr Benachrichtigungsgerät-Token, was Sie in AppDelegate erhalten, wenn es immer noch dasselbe ist. Soweit ich weiß, ist das Token pro Gerät/App-Kombination erstellt. Wenn Ihre App eine andere ID hat, denkt iOS, dass es sich um eine "andere" App handelt und Sie erhalten ein weiteres Token.
  • Hat Ihre App mit der neuen ID Remote-Benachrichtigungen angefordert? Wenn nicht, müssen Sie in den iOS-Einstellungen nachsehen, ob Notizen aktiviert sind oder nicht.
+0

Push ist in XCode aktiviert (und Häkchen). Push ist im Entwicklerportal aktiviert (wenn ich auf die App-ID klicke), und es gibt ein Zertifikat vom Typ "Apple Push Services". Mit gültig meinen Sie, dass das auslaufende Datum nicht erreicht wurde? In diesem Fall ist es gültig. Der Geräte-Token ist immer noch derselbe. Deshalb ist es komisch. Alles sieht gut aus. –

+0

Ja, ich meinte das. – user8527410

+0

Vielleicht sollten Sie Ihre App von Ihrem Gerät entfernen und sie mit XCode neu installieren. Dann muss die App um Erlaubnis für Benachrichtigungen bitten und (ich denke, dass ein neues Geräte-Token generiert wird). BTW: Wir sprechen über ein iPhone oder iPad und nicht den Simulator?) – user8527410

0

Ich habe es endlich gelöst. Ich weiß nicht, was genau das Problem verursacht hat. Ich habe die App auf Apple Account 1 auf Apple Account 2 übertragen. Daher wurde auch die App ID übertragen. Ich löschte die App-ID, die ich zuvor auf dem Apple-Konto 2 verwendet hatte. Also verwendete ich die App-ID auf Apple-Konto 2, die von Apple-Konto 1 übertragen wurde. Die Zertifikate wurden nicht übertragen, also habe ich sie erstellt wie früher PEM-Datei. Das hat den Trick gemacht.

Verwandte Themen