標題說明了這一切...我在每次啓動應用程序時調用registerForRemoteNotificationTypes。它第一次非常出色。有一個設備令牌,但我所做的只是NSLog。每次應用程序註冊時都會調用didRegisterForRemoteNotificationsWithDeviceToken?
現在再次運行該應用程序... didRegister *和didFail *回調都沒有執行。我的代碼/網絡沒有任何變化。
這是正確的行爲?我在StackOverflow上看到了相互矛盾的答案。 This SO answer意味着每次都應該發生didRegister *回調。有人說你永遠不應該緩存設備令牌。那麼,沒關係......但是我第一次得到一個令牌時沒有做任何事情,所以現在它已經丟失了?通常情況下,應用程序應該將令牌推送到我的推送通知服務器,但我只是處於開發階段,並沒有這樣做。所以現在這個令牌丟失了,我的應用程序不會再收到另一個?這看起來很奇怪,因爲蘋果文檔說在每個應用程序啓動時調用registerForRemoteNotificationTypes!如果您每次都不回收新的(或回收的)令牌,這有什麼意義?或者還有其他事情在這裏發生?