我正在开发一个Ionic项目,当用户离线时(在SQLite数据库中),该项目将数据存储在本地;当用户重新在线时,该数据应同步,并将这些数据存储在服务器的MySQL数据库中。
我会不时检查应用程序中的用户是否在线,并且我正在使用此Background Mode插件在后台运行该应用程序。但是,我遇到了一些问题。当用户关闭应用程序并随后使其联机时,该应用程序并未真正运行,因此无法将数据发送到服务器。据我所知,此插件仅在用户未从内存中“清除”该应用程序时才有帮助(通过从最近的应用程序列表中将其清除),甚至该插件的作者说“自己使用该插件”风险!”。
我找到了这个question,但对我的情况没有帮助。
即使关闭了应用程序,有什么方法可以与服务器同步此数据?
答案 0 :(得分:0)
我没有使用MySql的经验,但是使用Google Firestore这样的功能非常容易实现。我建议您尝试一下,尤其是由于nonSql数据库开始成为新的规范。
答案 1 :(得分:-1)
是的,可以。根据项目的需求,有很多方法可以做到这一点。 一种方法是将数据存储在LocalStorage中,创建一个在打开应用程序时运行的服务,以验证数据是否已被修改。 另一个方法是使用Ionic Native的BackgrounMode插件(https://ionicframework.com/docs/native/background-mode/),每隔一段时间执行一次函数。这是两种可能的方式,您可以共享有关该项目的更多信息,以了解一些最佳实践。