Ben de aynı sorunu yaşadım: registerForRemoteNotificationTypes:ne çağırdı ne application:didRegisterForRemoteNotificationsWithDeviceToken:deapplication:didFailToRegisterForRemoteNotificationsWithError:
Sonunda bu sorunu Apple'ın TN2265 teknik notunun yardımıyla çözdüm .
Ben de öyle yaptım:
Öncelikle, "aps-environment" anahtarı için sağlama profilimi ve .app dosyasının kod imzalaması dahil olmak üzere, Push Bildirimleri için gerçekten doğru şekilde kaydolduğumu iki kez kontrol ettim . Her şeyi doğru ayarlamıştım.
Daha sonra konsolda Push Notification durum mesajlarında hata ayıklamak zorunda kaldım (cihazınıza PersistentConnectionLogging.mobileconfig ön hazırlık profilini kurmanız ve yeniden başlatmanız gerekir. "Push Durum Mesajlarını Gözlemleme" altındaki TN2265'e bakın ). Apns işleminin bir zamanlayıcı başlattığını ve minimum yangın tarihini hesapladığını fark ettim, bu da normalde bu noktada sunulan Push-Notification kayıt onay mesajının TN2265'te belirtildiği gibi APNS tarafından bastırıldığından şüphelenmeme neden oldu:
İOS'ta Anında Bildirim İzinleri Uyarısını Sıfırlama
Push özellikli bir uygulama push bildirimleri için ilk kez kaydolduğunda iOS, kullanıcıya o uygulama için bildirim almak isteyip istemediğini sorar. Kullanıcı bu uyarıyı yanıtladıktan sonra, cihaz geri yüklenmedikçe veya uygulama en az bir gün boyunca kaldırılmadıkça tekrar gösterilmez.
Uygulamanızın ilk kez çalıştırılmasını simüle etmek istiyorsanız, uygulamayı bir gün boyunca kaldırabilirsiniz. Sistem saatini bir gün veya daha uzun bir süre ileri ayarlayarak, cihazı tamamen kapatarak ve ardından cihazı tekrar açarak bir gün beklemeden ikincisine ulaşabilirsiniz.
Bu yüzden uygulamayı cihazdan kaldırdım, ardından Ayarlar'da iPhone'un tarihini manuel olarak değiştirdim, cihazı yeniden başlattım ve uygulamayı yeniden yükledim.
Kodum bir dahaki sefer aradığında registerForRemoteNotificationTypes, beklendiği gibi geri aramalar aldı.
Bu benim için sorunu çözdü. Umarım yardımcı olur.