2009-10-09 8 views
6

Po wykonaniu wszystkich opisanych kroków korzystam z certyfikatu programisty z włączoną usługą APN i wzywam registerForRemoteNotificationTypes: z odpowiednimi flagami w mojej aplikacji do delegowania.Powiadomienia o usłudze Apple Push - Podczas rejestrowania powiadomień nie są odbierane żadne oddzwanianie.

Mimo to żadna aplikacja: didRegisterForRemoteNotificationsWithDeviceToken: ani application: didFailToRegisterForRemoteNotificationsWithError: są wywoływane. Wygląda na to, że wniosek rejestracyjny utknął w drodze.

Co robię źle?

+0

Czy możemy zobaczyć kod? Wygląda na to, że robisz to dobrze. – Alex

+0

Warto też ponownie wykonać kolejne kroki, aby upewnić się, że profil obsługi jest poprawnie skonfigurowany. http://developer.apple.com/IPhone/library/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ProvisioningDevelopment/ ProvisioningDevelopment.html # // apple_ref/doc/uid/TP40008194-CH104-SW2 – Alex

+0

Alex: skopiowano i wklejono z witryny programisty OpenFeint. Przetestowano również w celu upewnienia się, że wywoływana jest metoda registerForRemoteNotificationTypes: i przetestowano, nazywając ją bezpośrednio w delegacie aplikacji. Kiedy testuję to przy złej aplikacji profilu: didFailToRegisterForRemoteNotificationsWitError zostaje wywołany z odpowiednim opisem błędu, więc wiem, że to wychodzi. Po prostu delegat sukcesu nigdy nie zostaje wezwany. –

Odpowiedz

0

Wypróbuj aplikację na innym urządzeniu. Jeśli to działa ...

Mam ten sam problem z jednym iPhone 3G (bez jailbreak, bez odblokowania). To somply nie działa z tym telefonem. Próbowałem aktualizacji do nowszego systemu operacyjnego iPhone. Próbowałem przywrócić ustawienia fabryczne. Pokazuje ekran potwierdzenia i zapisuje odpowiedź w Ustawieniach. Ale żadna aplikacja: didFailToRegisterForRemoteNotificationsWithError ani application: didRegisterForRemoteNotificationsWithDeviceToken są zawsze wywoływane.

Ta sama aplikacja działa na wszystkich innych testowanych urządzeniach (iPody, telefony iPhone). Ten iPhone 3G również nie odbiera PN dla innych aplikacji.

PN-y również nie działały dla jednego iPhone'a Jailbroken Classic.

Możliwe, że Twoje urządzenie po prostu nie zachowuje się prawidłowo. Wypróbuj inne urządzenie.

+0

Czy operator telefoniczny Jailbroken jest aktywny lub hakowany? Jeśli nie jest aktywowany operator, naciśnięcie nie działa. – nolim1t

0

miałem ten problem zbyt i to z powodu złych certyfikatów, identyfikator aplikacji, profil przepis ...

Upewnij się, że: 1, popraw certyfikaty są zainstalowane na kliencie i serwerze 2 Upewnij się, że wybrałeś poprawny profil świadczenia w ustawieniach projektu. PAMIĘTAJ Identyfikator aplikacji w profilu udostępniania musi być specyficzny (nie kończący się *), a ostatnia część tego identyfikatora aplikacji musi dokładnie pasować do nazwy aplikacji i rozróżniana jest wielkość liter. tak iv aplikacja nazywa myApp następnie aplikacja id musi być SOMENUMBERScom.yourcompany.myApp

tylko pomysł ...

0

miałem ten sam problem i rozwiązać go poprzez odłączenie od sieci komórkowej. Wydaje się być problem, gdy zarówno bezprzewodowe i 3G są włączone jednocześnie.

1

To zabrzmi głupio, ale to trochę mnie w przeszłości: dwukrotnie sprawdź wielkość liter i typy parametrów. Jeśli deklaracja metody delegatów nie jest na miejscu, twoja metoda nie zostanie wywołana i nie otrzymasz żadnego ostrzeżenia.

Najlepiej jest skopiować i wkleić prototyp z dokumentacji firmy Apple.

0

Dowiedziałem się, że powiadomienia PUSH wymagają portu 5223 otwartego w sieci (jeśli korzystasz z WIFI) lub w inny sposób komórkowego połączenia danych.

Napotkałem ten sam problem w mojej sieci domowej i musiałem ręcznie otworzyć port w routerze bezprzewodowym.

Powiązane problemy