2

,進入應用程序在我得通過Parse.com使用推送通知的iOS應用程序,我想要做一些測試其中的通知只發送給測試設備。如果我簡單地切換到開發證書,我認爲通知不會進入生產設備。APNS - 以生產發展

不過,我稍微擔心做錯事時,不慎試圖通過開發證書推送通知成千上萬的發送到生產設備。

我知道生產設備將不會收到通知,但會不會有任何更廣泛的問題是這樣的情況發生 - 即我的應用程序遭到舉報爲垃圾郵件或類似的東西?

+0

就像葉蘭提到,生產令牌是從開發令牌不同。因此,如果您將消息發送到Apple Sandbox服務器,它將無法到達帶有生產令牌的設備。 – Ricky

回答

1

如果您嘗試使用開發證書(並連接到APNS沙盒服務器)將通知發送給生產設備令牌,你會得到無效的設備令牌的誤差爲每個通知,連接將每次發送消息後關閉。大多數消息甚至不會到達Apple,因爲他們一旦發現無效消息就關閉連接,並且在該消息之後發送的所有消息都將被丟棄。將

一個更大的問題,如果你存儲的沙盒(=開發)在同一個DB設備令牌作爲生產令牌。如果您不區分這兩種令牌,那麼當您切換回生產推送通知時,您可能會嘗試使用生產推送證書向沙箱令牌發送通知,這會給您帶來錯誤並關閉您的連接APNS,從而擾亂了對生產標記的推動。因此,我強烈建議您使用不同的數據庫來存儲沙箱設備令牌。

+0

同意。最好區分生產服務器和測試(開發)服務器。 – Ricky

+0

我正在使用Parse.com,而不是自己實現數據庫。那麼,如果我確實使用開發證書向生產令牌發送了通知,那麼這些通知將被忽略?我只是想在測試時能夠向開發設備發送通知,但由於我使用的是Parse.com,並且沒有實現db,所以我不認爲我能夠很好地控制通知的標記發給。所以,我認爲,如果我只是切換到開發證書,生產標記將被忽略,開發標記將被交付給開發設備。這是一個壞主意嗎? – user1718136

+0

@ user1718136我不知道如何解析實現數據庫(當您向他們發送設備令牌時,您是否有辦法指定是否發送生產令牌或沙箱令牌?)。我只是說在同一數據庫中同時擁有開發和生產標記會在推向生產時導致問題(因爲沙箱標記可能會導致連接一直關閉)。 – Eran