如何仅从Parse.com获取新数据


How fetch only new data from Parse.com

我正在用PHP构建一个Android应用程序和一个后台。在我的后台,管理员可以创建和编辑一些对象(如事件、活动等)

有很多数据(一百个事件,一百个活动,…)

我的问题是:第一次运行时,Android应用程序将获取所有数据(所有事件、所有活动)。然后管理员在后台编辑或添加一个事件。安卓应用程序只获取最新数据的最佳方式是什么?

推送所有单个新数据(或编辑数据)的最佳方式是什么?比如:事件A被编辑了,向所有设备发送推送通知事件A被修改了?

您有多个问题。我将回答标题上的问题:

ParseObjects总是有一个createdAt和一个updatedAt字段,您可以根据它们对结果进行排序。此外,您可以限制ParseQuery返回的结果数量(请参阅PHP文档和Android文档)。

例如,如果您想获取多达50个事件,最新的是第一个,那么您可以在PHP中执行以下操作,假设按createdAt时间戳排序对您有效:

$q = new ParseQuery("Event");
$q->limit(50);
$q->descending("createdAt");
$events = $q->find();

如果您想获得比特定日期/时间更新的多达50个事件,可以执行以下操作(请参阅DateTime的PHP文档)。例如,如果您已经加载了一些事件并希望"刷新",这可能会很有用:

$date = new DateTime(/*Valid timestamp here*/);
$q = new ParseQuery("Event");
$q->limit(50);
$q->descending("createdAt");
$q->greaterThan("createdAt", $date);
//You can also use $q->greaterThanOrEqualTo("createdAt", $date);
$events = $q->find();

我提供了PHP示例,因为这是我知道如何用于Parse的,但你可以在Android中做同样的事情。