首页 > 解决方案 > 如何从 android studio 应用程序监听 mysql 数据库的任何更改?

问题描述

所以我目前正在尝试制作某种消息传递应用程序,非常基本(只是为了学习)。而且我被困在应用程序必须监听 MySQL 数据库(应用程序发送消息的地方)上的任何更改的地步,以便它可以更新其 recyclerview 并将数据放入其中。

我已经完成了发送数据以执行数据库并检索(使用 Volley)它的部分,但我只是创建了一个循环,每 5 秒重复一次,以查看是否已将任何内容添加到数据库中,这正在工作但坏的 :/

我没有一些代码可以给你看,因为我没有在这部分做任何事情。询问我是否需要更多详细信息:)

所以我希望我的应用程序能够保持自身与数据库的更新。

感谢您花时间帮助我。

标签: androidmysql

解决方案


这是一个非常广泛的问题。如果我理解正确。您想检查服务器上的数据库是否已更新。您此时尝试的操作称为polling

您可以查看以下选项:

  • 当有新消息发送到您的服务器时,向设备发送推送通知。收到推送通知后,您的应用程序将进行 API 调用以获取新消息。
  • 使用 WebSocket。这是一种 2 路持久连接,您可以在其中以低得多的开销发送/接收数据。
  • 查看一些现有的解决方案,例如 Firebase、Pusher Chatkit 或任何其他提供商。

您仍然可以使用polling。为了节省一些资源,您可以使用指数退避和限制对服务器的调用次数。当有新消息到达时,发送推送通知。


推荐阅读