我正在使用轻量级架构实现聊天应用程序。
我正在使用Google Cloud Messaging处理从服务器到Android客户端的通知(新消息传入,新友情请求,......)。
我有一个用户X可以与之交谈的人的ListView。出于性能和稳健性的原因,当我打开与用户Y的一个对话时,原因是昂贵的“新消息查找”。通常,所有最新消息都存储在SQLite DB中,并且它们立即可用。问题是要管理传入的新邮件......
那么最好的架构是什么?
在收到新消息时将通知推送到Android客户端 - >立即在服务器上查找以获取来自用户Y的所有新消息。
但如果通知未到达该怎么办?我是否需要在活动聊天生命周期中的某个时刻进行查找的服务?例如,每次聊天活动都是onPause()?
是否有任何性能提示可以将有效的消息存储到SQLite数据库中并从服务器数据库中进行更快的查找?