問題描述做IM即時聊天,收到消息會在App的icon上顯示小紅數(shù)字角標(biāo),有幾條則有幾條未讀消息, 然后聊天列表里是具體某一個人的未讀消息的條數(shù),列表各個條數(shù)加起來就是推送的總條數(shù),點(diǎn)開讀取某個人的消息則角標(biāo)是讀取了多少條則減掉多少條,這個邏輯貌似沒什么問題。 當(dāng)app未啟動的時候,或者是按home鍵退出到后臺kill掉app的情況下仍能收到通知消息,單是此時角標(biāo)不會遞增,遍尋百度和google,仍然無果:問題出現(xiàn)的環(huán)境背景及自己嘗試過哪些方法未啟動或是被kill掉進(jìn)程的App,是無法執(zhí)行到App里的代碼進(jìn)行遞增邏輯的,所以只能通過服務(wù)器badge字段設(shè)置通過服務(wù)器設(shè)置,服務(wù)端得知道客戶端讀取了多少條,得上報未讀條數(shù),這個時候貌似答案已經(jīng)很明朗了,就這么干靜默推送是沒有消息顯示和聲音的,據(jù)說靜默推送是可以有幾十秒時間執(zhí)行后臺任務(wù)的,但是每次推10條左右(后臺循環(huán)3秒推一次)就戛然而止了,后來了解到蘋果規(guī)定1小時之內(nèi)后臺任務(wù)的使用次數(shù)是有限個位數(shù)次的...所以...不知道咋說(可人家微信的消息角標(biāo)是一直可以遞增的)...可怕的事情發(fā)生了,就是當(dāng)開啟飛行模式的時候,把所有的未讀消息讀取點(diǎn)掉,然后再退出到后臺kill掉App,隨即后端瘋狂推幾十條消息, 此刻未讀條數(shù)并未及時上報,所以這個操作會造成未讀條數(shù)前后端不一致,用戶感知到數(shù)據(jù)異常的話,就會很反感...卸載App等操作因為微信已經(jīng)完美實(shí)現(xiàn)了這個功能,不知道他們是如何實(shí)現(xiàn)的,所以這就很尷尬了...你期待的結(jié)果是什么?實(shí)際看到的錯誤信息又是什么?期待有網(wǎng)友提供思路,先行感謝
- 1 回答
- 0 關(guān)注
- 989 瀏覽
添加回答
舉報
0/150
提交
取消