2009-06-26 15 views
3

Ich habe Push-Benachrichtigungen im Apple Developer Panel eingerichtet und den Code zu meiner Anwendung hinzugefügt.iPhone SDK Push Notification

Es funktioniert gut auf dem Telefon mit einem Entwicklungsprofil, aber wenn ich ein Verteilung (Ad-hoc) -Profil verwenden, so dass ich es einigen Benutzern zum Testen geben kann gibt es einen Fehler und stürzt ab, das Protokoll gibt Folgendes Fehler

Code:

Thu Jun 25 22:22:35 unknown SpringBoard[729] <Warning>: *** Assertion failure in -[SBRemoteNotificationServer registerApplication:forEnvironment:withTypes:], /SourceCache/SpringBoard/SpringBoard-919.5/SBRemoteNotificationServer.m:633 
Thu Jun 25 22:22:35 unknown SpringBoard[729] <Error>: *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'no connection found for environment production' 

ich den folgenden Code in der App mit

Code:

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)]; 

Das, was ich nicht verstehe, ist, warum es perfekt funktioniert mit einem Entwicklungsprofil, aber mit Ad-hoc-es stürzt ab.

Weiß jemand, was würde dies verursachen ?, Ich habe versucht, viele Dinge zu ändern, um zu versuchen, das Problem zu finden, aber nichts gefunden haben.

+0

Schauen Sie sich den Vorschlag "Le Monde.fr" von "Sint" an - es funktioniert! Ich denke, das ist ein Fehler, also habe ich dies mit Apple als Bug ID # 7365308 angesprochen ("Wechsel von Entwickler zu Ad-hoc-Version einer App mit APNS verursacht Abstürze"). –

+0

FYI, Apple haben extrem schnell auf meinen Fehlerbericht geantwortet und gesagt: "Können Sie bitte überprüfen, ob dieses Problem auch in iPhone 3.1.2 GM (7D11) auftritt". Es ist unwahrscheinlich, dass ich das noch eine Weile testen kann. –

Antwort

1

ich es geschafft, diese Funktion zu erhalten, indem alle Zertifikate neu anfordernden etc ..

2

Ich war auch dieses Problem. Das Symptom war, dass die App beim Aufruf von [[UIApplication sharedApplication] registerForRemoteNotificationTypes: ...] abstürzen würde.

Es scheint, dass, sobald ein bestimmtes Gerät ein APNs-Verteilungsprofil lädt, der Versuch, später zur Verwendung eines APNs-Entwicklungsprofils zurückzukehren, nicht funktioniert, wenn Sie die App-ID nicht ändern.

Wenn Sie eine benutzerdefinierte Build in Xcode erstellen Einstellung, wie hier vorgeschlagen:

iPhone "Good Practices"

Sie das Krachen stoppen können und haben auch beide Versionen nebeneinander existieren auf dem gleichen Gerät zum Testen, etc.

2

Ich löste dieses Problem auf einem meiner Entwicklungsgeräte, indem ich eine zufällige Anwendung aus dem App Store installierte, die Push-Benachrichtigungen verwendet. In diesem Fall habe ich die Anwendung Le Monde.fr installiert. Nachdem ich diese Anwendung einmal ausgeführt hatte, stürzte meine eigene Anwendung nicht mehr ab.

+0

Ich konnte nicht glauben, dass diese Lösung funktionieren würde, aber nachdem mir andere Ideen ausgegangen waren, habe ich es ausprobiert - und es funktioniert! Schön! –

0

Ich löste dies, indem ich auf Einstellungen gehe, dann die oberen "Master" Push Notifications schalten und dann wieder einschalten.

0

Lange, aber sichere Schusslösung ist "Löschen aller Inhalte und Einstellungen".

0

Hier ist meine Lösung, und es hat damit zu tun, wie Adhoc-Profile arbeiten. Adhoc-Profile können nicht über xCode installiert werden. Sie müssen die App erstellen, archivieren und mit iTunes oder dem Organizer installieren. Das hat es für mich behoben.