繁体   English   中英

来自xmpp ios的未读消息数

[英]number of unread messages from xmpp ios

我正在使用XMPPFrameWork开发聊天应用程序。 一切都很完美,但我仍然坚持获取大量未读消息。 我要在tableView上显示尚未打开的消息数。 我该怎么办,有什么想法吗? 我试图显示mostRecentMessage但它没有用。 任何帮助将不胜感激。谢谢。

XMPP中的“XMPPUserCoreDataStorageObject”中有一个名为“unreadMessages”的属性。 传递FROM“jid”以获取相应的用户对象,并在Appdelegate的下面方法中增加“unreadMessages”值,

 - (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message  

并再次在同一个数据库中更新它。就像,

XMPPUserCoreDataStorageObject *user = [self.xmppRosterStorage userForJID:[XMPPJID jidWithString:[NSString stringWithFormat:@"%@", [[[message fromStr] componentsSeparatedByString:@"/"]objectAtIndex:0] ]]
                                                                          xmppStream:self.xmppStream
                                                                managedObjectContext:[self managedObjectContext_roster]];

    NSNumber *number = user.unreadMessages;

    int value = [number intValue];

    number = [NSNumber numberWithInt:value + 1];

    user.unreadMessages = number;

然后在任何viewcontroller中使用上面的代码来检索未读的消息计数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM