色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

怎樣判斷一條信息是否已被用戶讀取了

怎樣判斷一條信息是否已被用戶讀取了?

隨著移動(dòng)互聯(lián)網(wǎng)的不斷發(fā)展,推送和消息中心成了很多APP必備的一個(gè)功能。

而一般我們?cè)谠O(shè)計(jì)消息中心的時(shí)候,會(huì)遇到這種判斷用戶是不是已讀的情況。對(duì)于發(fā)件人,他想知道自己的消息是不是被所有人都閱讀了,還有哪些人沒(méi)有看到這個(gè)消息。對(duì)于收件人來(lái)說(shuō),我想要知道我有哪些是未讀消息,哪些是已讀消息。

為了要保證每個(gè)用戶看到的消息是獨(dú)立的,相互不影響的,將是否已讀放在消息表上自然是不可行的,所以,會(huì)有一個(gè)鏈表,用來(lái)關(guān)聯(lián)用戶表和消息表,標(biāo)注消息是否已讀。

當(dāng)用戶需要?jiǎng)h除消息時(shí),也只是刪除用戶消息表的數(shù)據(jù),對(duì)于消息表的數(shù)據(jù)沒(méi)有影響。

而當(dāng)發(fā)送人想要拉回消息時(shí),也是將消息的狀態(tài)改變,然后刪除所有未讀用戶的用戶消息表數(shù)據(jù)即可。

這樣,一個(gè)消息是否已讀,就可以通過(guò)用戶消息表中的已讀和未讀標(biāo)記進(jìn)行統(tǒng)計(jì)了。

如果我們還想要統(tǒng)計(jì)已讀的數(shù)量,未讀的數(shù)量,還可以將消息ID和已讀未讀數(shù)量緩存到Redis中,每當(dāng)有用戶閱讀消息時(shí),已讀數(shù)量+1,未讀數(shù)量-1即可。