因此,我目前正在尝试制作某种消息传递应用程序,该应用程序非常基础(仅供学习)。而且我坚持认为,该应用程序必须侦听MySQL数据库上的任何更改(这是应用程序发送消息的位置),以便它可以更新其recyclerview并将数据放入其中。
我已经完成了向数据库发送数据并检索(使用Volley)数据的工作,但是我只是做了一个循环,每5秒重复一次,以查看是否有任何内容添加到数据库中。正在工作,但很糟糕:/
我没有任何代码可以显示给您,因为我在这方面没有做任何事情。问我是否需要更多详细信息:)
因此,我希望我的应用程序仅使用数据库进行自我更新。
谢谢您抽出宝贵的时间来帮助我。
答案 0 :(得分:1)
这是一个非常广泛的问题。如果我理解正确。您要检查服务器上的数据库是否已更新。此时您尝试的操作称为轮询。
您可以查看以下选项:
您仍然可以使用轮询。为了节省一些资源,您可以使用指数补偿并限制对服务器的呼叫次数。当收到新消息时,发送推送通知。
答案 1 :(得分:0)
最好的方法是使用实时数据库代替mysql。
我强烈建议您在聊天应用程序中使用Firebase实时数据库。如果您使用的是实时数据库,则不必担心数据库同步(每5秒钟重复一次的循环,看看是否有任何内容已添加到数据库中,这是一个非常糟糕的解决方案)。 >
请查看this简单聊天应用程序示例。