2011-10-24 56 views
1

如果啓用通知,則iOS設備在端口5223上維護到APNS推送服務器的TCP連接。iOS應用程序是否可以通過編程方式知道設備是否與APNS有活動連接?

我的應用程序可能知道這樣的連接目前是否處於活動狀態?這不是關於是否啓用通知設置的問題,但是在設備當前連接到APNS服務的情況下啓用。

雖然APNS服務不能保證可靠,但在我的應用程序中,讓用戶知道他們當前是否能夠接收通知很有用。該設備可能被防火牆阻止,或者APNS連接可能正在重試等過程中。

(我知道開發人員可以通過使用PersistentConnectionLogging.mobileconfig配置文件觀察APSD的輸出來檢查此情況,但是此操作不是最終用戶選項)

回答

1

我不這麼認爲。關鍵在於讓應用程序不再擔心這一點。當您爲推送通知註冊設備時,它會通過或失敗。您應該始終處理應用程序啓動時的失敗情況,並以某種方式通知用戶。

+0

謝謝。正如我所指出的,處理權限和註冊成功/失敗很容易。在啓用通知後,這是關於當前狀態的問題,並且推送註冊已成功。實質上,如果設備具有到APNS的活動連接,則是這種情況。這對IM或VOIP應用程序很有用。 – Ennova

相關問題