如何在安卓应用和PHP服务器之间同步数据?

4
我正在尝试在安卓应用和PHP服务器之间同步数据。
在我的应用中,我使用JSON Web服务从PHP服务器获取数据。
现在,每当PHP服务器数据库中添加新字段时,我的应用程序都应立即反映出来。
这是一种后台服务,我们需要随时查看PHP服务器数据库的新数据。
我该如何做到这一点?
2个回答

5

如果您需要立即使用,您应该考虑使用GCM

这句话在GCM的首页上:

从您的服务器向用户的Android设备发送数据。这可能是一个轻量级消息,告诉您的应用程序有新数据可从服务器获取

您需要做的是使后端通知GCM有新数据(通过GCM的Web服务)。然后,GCM负责将此消息传递给您的应用程序。它甚至会在应用程序未运行时启动应用程序。

至于具体的解决方案,您有两种可能性:要么后端仅通过GCM“ping”应用程序,应用程序将自己获取数据,要么,如果更新很小,后端可以直接将其发送到GCM消息中的应用程序。


你在正确的位置,但我有一个列表,其中显示客户(说)的图像、标题和描述。如果将任何新客户信息添加到PHP数据库中,则我的应用程序应将该信息添加为列表中的第一行。我认为GCM无法使用其键发送图像或数据以唯一标识。 - rahul
1
你只需通过GCM发送新客户的ID,应用程序将获取所有必要的数据。是的,您可以通过GCM发送任意数据(最多4kb),它包含在作为“data”参数描述的JSON对象中:“一个JSON对象,其字段表示消息有效负载数据的键值对。如果存在,有效负载数据将包含在Intent中作为应用程序数据,其密钥为额外的名称。例如,“data”:{“score”:“3x1”}将导致一个名为score的意图额外项,其值为字符串3x1。”【来源】(http://developer.android.com/google/gcm/server.html) - kamituel
1
或者你可以发送除了大文件(如图片)以外的所有数据 - 这样你的应用程序会更快地接收它们,向用户展示,并在后台仅下载图片。 - kamituel

0

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