整个场景被认为是使用不可用的连接。当连接可用时,同步将一起发生。
我正在开发的Android应用程序正在进入下一阶段。早些时候我有一种数据推送方式。即从移动设备到服务器。服务器有mysql
个数据库。为此,我使用http请求创建了简单的api,并在服务器上发送json
数据。
用户可以拥有多个智能手机设备(目前为andorid)。当数据同步时,所有移动本地数据都会被推送到服务器上。任何服务器更改也应反映在移动数据上。跨多个设备的双向同步。
我正在考虑以下情景。对于移动设备,我在android上使用sqllite
db。
On Mobile 1 database, Any record can be : insert, update, delete
On Mobile 2 database, Any record can be : insert, update, delete
.
.
.
On Mobile `N` database, Any record can be : insert, update, delete
On Server database, Any record can be : insert, update, delete
在所有这些情况下,数据应该与服务器一起在所有设备上同步。但是,当执行同步时,它将在一个移动设备和服务器之间,而不是同时在所有设备之间。
我不知道这个。我想知道我应该使用什么方法?这样所有数据都处于同一状态。
我打算为此开发api。任何建议都会有所帮助。
答案 0 :(得分:1)
您需要优先使用JSON实现某种消息。任何设备都可以发送消息以在数据库中插入,更新或删除。每个设备都应接收所有消息并将其用作更改日志。
关键概念是设备之间的同步。这种最简单的方法是使用带有mosquitto服务器的MQTT协议。
MQTT是一种用于在多个设备之间发送消息的协议。任何客户端都可以向MQTT服务器(称为代理)发送消息,并且可以保证任何其他客户端在恢复其连接后立即接收所有消息。
这样的东西在Facebook Messenger中使用,因此您可以同时讨论多个设备。如果您在一台设备上向您的朋友发送消息,它会自动弹出为您的Facebook帐户上的所有其他人发送的消息。
MQTT非常简单,功能强大。我相信它可以为您节省大量时间来开发您的应用程序。