如何在Android中存储聊天记录

6

我正在开发一个使用ASmack库发送和接收IM的XMPP客户端应用程序。我希望存储用户之间的聊天历史记录。这个历史记录必须是持久的,直到我通过点击按钮清除聊天为止。

如何最好地维护聊天历史记录?任何提示都将非常有帮助。


你能否在你的应用程序中保存以前的聊天列表?能帮我吗?我也想保存以前的聊天列表,但是我无法保存。 - shassss
你是想用什么方式来存储数据?SQLite、SharedPreferences还是简单的对象? - Rahul Kalidindi
1
我实现的方式是,将fromuserid、touserid和消息存储在一个表中。当调用活动时,我会触发查询并根据用户ID检索所有消息,并填充列表视图的适配器。当活动被销毁时,我还清除数据库表,以避免数据库过重。 - Rahul Kalidindi
如果您不需要长时间保留数据,那么可以使用像哈希映射这样的数据结构来维护数据。 - Rahul Kalidindi
1个回答

8

走SQLite的路是唯一的解决方案吗?其他聊天应用程序,如Gtalk、Facebook等,是否使用sqlite存储聊天会话? - Rahul Kalidindi
Gtalk、Facebook 将它们的数据保存在服务器端,而不是本地数据库。 - Tanmay Mandal
你可以重新发明轮子:- 使用XML、JSON或自己制定的文本格式并保存到文件。- 保存到SharedPreferences(但要注意大小)。- 保存在你的服务器上。只是Sqlite是为了轻松高效地存储数据而设计的,所以这是最简单的方法。 - Yahel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接