此問題可能與Duplicate Apple APNS push notifications?相同,但由於該問題沒有得到答案,並且我有更多信息,因此我會再試一次。iOS上的重複推送通知
步驟來重現問題:
- 設置通知中心顯示通知的警報,這將使問題更加明顯。
- 確保該應用程序未在前臺運行。
- 快速連續發送3個相同的推送通知。
- 等到信息到達手機時,您現在必須關閉警報3次。
- 現在再發送1條通知,與以前的通知不一致。
- 您現在可以看到最後一條通知,但您還會看到之前的一條通知再次顯示。這就是問題。
- 如果您繼續發送單個通知,前3箇中的其中一個會在不應該時彈出。
這裏是請按照下列步驟的視頻,這清楚地表明瞭問題:
我們就像雷米大風的確在鏈接的問題上面確信,我們的通知中發送正確的方式,並且每個通知只有一次。我們還用sandbox-apns和production-apns進行了測試,兩者表現完全一樣。
如果應用徽章設置爲0,問題就會消失,而這又會從通知中心移除所有通知。手動刪除通知不會有幫助。
UIApplication *app = [UIApplication sharedApplication];
app.applicationIconBadgeNumber = 0;
但這不是一個解決方案。
如果所有通知都包含唯一文本,則不會出現該問題。向警報文本添加GUID將使問題消失。然而,將它作爲自定義屬性或作爲本地化參數添加到apns-payload中並不會有幫助,所以這也不是解決方案。
這可能很少發生在具有實時應用程序的生產環境中,但它可能發生,並且當它發生時,這對用戶來說真的很煩人!
有誰知道爲什麼會發生這種情況?有沒有人有一個可行的解決方案?
由於pushnotifications是由os處理的,所以我沒有太多的辦法來解決這個問題。我會將此報告爲Apple的一個漏洞,並向他們提供測試應用程序和youtube電影。 – rckoenes