我目前正在調查通過在線離線支持的應用程序,並找出APNS的使用,這是很容易理解,當我的應用程序只與單個用戶的交易。(就像SMS)我應該如何處理APNS的多帳戶應用程序?
我的理解是,安裝到特定設備的每個應用程序都將擁有自己的設備令牌(即使註銷到APNS並重新註冊後也不會更改)。所以,當一個用戶從不同的設備登錄時,APNS又會依次識別服務器。
但是,當我嘗試實施多賬戶應用程序(就像Facebook一樣,不同的人可以使用相同的手機登錄),出現了一些問題。
當用戶A登錄時,當應用程序處於後臺狀態時,它確實收到通知。
但是,當用戶A註銷(當電話沒有互聯網連接,這意味着不能立即更新服務器刪除帳戶),然後用戶B登錄,同時服務器試圖推送通知到用戶A的電話,通知已經由電話接收(但是這是用戶A的通知),並且用戶B將接收到(在實際情況下永遠不會發生的)。
看來,APNS無法檢查應用程序內帳戶身份驗證。
所以,我的問題是,
有沒有什麼辦法來檢查並刪除手機上的通知(我讀過的蘋果文檔,並注意有一個QoS的存儲最後通知)?
在使用APNS時,處理這種認證問題的好方法是什麼?
如果我有任何概念誤解,請如有糾正我的問題。並希望我的問題不健全的愚蠢和笨拙而且也沒有任何問題的重複...
感謝:) ,也許Facebook的例子不是那麼好xD 因爲我的應用程序將支持可以在離線模式下完成的功能。 我曾嘗試註銷Facebook應用程序沒有互聯網連接,並以某種方式註銷我.__。 – user1516507 2012-08-03 01:07:12
而且,發送Push notif的壞主意取決於在線用戶。您可以使用本地通知,以獲得良好的結果。但是,我明白了,你需要使用APNS – CReaTuS 2012-08-03 02:06:36
哦!你的意思是,我不應該使用APNS的默認「提醒」,而應該改變我的策略爲: 服務器仍然要求APNS將通知推送到設備,而不顯示任何類型的警報視圖以及徽章號碼的增加,而是發送一些用戶信息,如「接收者」:「[email protected]」,並檢查剛剛登錄的用戶是否是[email protected]。如果是,請充分利用本地通知,否則什麼都不要做。 這是你的意思嗎? – user1516507 2012-08-03 11:15:05