2010-04-10 5 views
12

Meine App wurde gerade für den Apple-Store freigegeben. Ich habe es heruntergeladen und es auf meinem iPhone installiert - aber es sieht so aus, als wären Push-Benachrichtigungen kaputt!Push-Benachrichtigungen funktionieren für Ad-hoc, aber nicht, wenn sie aus dem Apple-Store heruntergeladen werden

Ich habe erfolgreich Push-Benachrichtigungen in der Produktion mithilfe eines AdHoc-Bereitstellungsprofils getestet. Ich hatte keine Probleme. Das einzige, was ich anders gemacht habe, als ich bei Apple eingereicht habe, war die Verwendung eines Verteilungsprofils für ein App-Geschäft.

Die Anwendung fragt mich nie (oder jemand anderes, der es heruntergeladen hat), wenn ich Push-Benachrichtigungen erhalten möchte. Folglich redet das Telefon nie mit meinem Server, um das Push-Token zu senden (weil Anwendung: didRegisterForRemoteNotificationsWithDeviceToken: wird vermutlich nie aufgerufen). Auch die Anwendung erscheint nicht in den Einstellungen App unter den Benachrichtigungseinstellungen.

Was könnte ich falsch machen ??

BEARBEITEN: Während die App auf die Genehmigung wartete, hatte ich einige Probleme beim Generieren meines Produktions-Push-Zertifikats. Könnte das relevant sein?

Problem generating APN SSL certificate after submitting to apple store

Antwort

21

Vergewissern Sie sich, dass Sie Ihre Produktions-App-ID erstellt und Push-Benachrichtigungen aktiviert haben. Erstellen Sie dann das Bereitstellungsprofil für diese App. Herunterladen und öffnen Sie die Datei mit einem Texteditor müssen sicherstellen, dass das Profil diesen Schlüssel und Wert enthält:

aps-Umgebung Produktion

Wenn nicht, dann stellen Sie sicher, haben Sie wirklich die App-ID für die Produktion freigegeben Drücken Sie, bevor Sie Ihr Bereitstellungsprofil erstellt haben.

Nachdem Sie Ihren Build zu machen, können Sie das letzte Build überprüfen, um zu überprüfen sie die aps-Umgebung Berechtigung hat (Sie suchen die aps-Umgebung Codesignierung Berechtigung unter „Interne Anforderungen):

Co-Design - dvvvv --entitlements - MyCoolApp.app

+1

Oh wow danke! Ja, das war es. Ich habe das ursprüngliche Verteilungsprofil überprüft, und dieser Schlüssel war nicht vorhanden. Ich schätze mal, welche Reihenfolge du wirklich nimmst. – MikeQ

+0

Große Lösung. Es ist sehr beruhigend, in der endgültigen kompilierten App überprüfen zu können, ob der aps gesetzt ist oder nicht. – scottbates22

3

Haben Sie die gleiche ID-Anwendung sowohl für die Ad-hoc- und die Verteilung mobileprovision Dateien? Es muss eine vollständige Kennung sein, nicht nur teilweise.

+0

Durch komplett, meinst du einen nicht-Wildcard-ID Wenn ja, yep es eine ganz andere App-ID war ich getestet tatsächlich die ad-hoc-Anwendung, die eine ID verwenden, das zu Ende?. mit ".adHoc" und das hat gut funktioniert - dann habe ich die Anwendung mit einer ID eingereicht, die mit ".release" endete. Das war die einzige Änderung. Sobald ich von diesem Problem erfahren habe, habe ich ein Ad-hoc-Bereitstellungsprofil für die App-ID ".release" erstellt und auf meinem Telefon installiert - und Push-Benachrichtigungen funktionierten! – MikeQ

Verwandte Themen