使Android本地数据库(Realm)与SQL Server保持同步,同时将网络开销降至最低

时间:2016-06-07 18:23:00

标签: android sql-server realm

情况

我一直在敲打这个问题。我有一个本地数据库使用Realm与后端SQL Server DB。我的应用程序中有一些区域可以非常快速地更改数据(例如,一个复选框)。用户可以每秒多次来回切换数据。因此,假设用户在一秒钟内进行了10次更改。我想避免的是在那一秒内向SQL Server发送10次。相反,我想要发生的是某种批处理过程,每隔5~10秒执行一次,以同步数据,从而减少网络呼叫。

警告

即使用户在5~10秒标记之前或正在执行POST调用时杀死应用程序,如何确保同步过程仍会触发。

  1. 调用当前活动的onPause()中的服务,以便在事后运行?这是 保证?

  2. 缓存数据并在下次应用启动时重试?

  3. 使用GCM或某种形式的推送服务来启动预定同步?

  4. 据我所知,这并没有灵丹妙药,但如果有人遇到类似的问题,我们非常感谢任何建议/最佳实践,谢谢!

1 个答案:

答案 0 :(得分:0)

尝试在领域中使用onchangesListener。将更新的或新的数据同步到sql server ..