如何从 Android 应用程序与服务器同步倒数计时器

Posted

技术标签:

【中文标题】如何从 Android 应用程序与服务器同步倒数计时器【英文标题】:How to Sync countdown timer with Server from Android Application 【发布时间】:2016-02-21 07:10:24 【问题描述】:

倒数计时器Node.js 服务器启动,当启动倒数计时器时,会广播套接字事件(倒计时约 20 秒) em> 使用 Socket.IO 连接到所有连接的客户端(android 应用程序)。

有时由于互联网连接速度慢或由于其他原因,某些客户端会延迟接收广播消息,并且这些设备中的倒数计时器开始延迟。服务器倒计时和安卓应用不同步。

我应该怎么做才能从 Android 应用程序与服务器同步倒计时?

【问题讨论】:

【参考方案1】:

您应该传递过期时间值,而不是传递倒计时时间,并且您必须自己获取倒计时时间。 这样你的倒计时时间在服务器和手机上是一样的。

【讨论】:

好的,我会发送倒计时的过期时间,但是我如何确定Android App知道确切的服务器当前时间?倒计时的持续时间约为 20 秒。因此,我非常有必要知道确切的服务器时间和到期时间,以使您的解决方案能够奏效。 您可以在 UTC 中花费时间,这在服务器和移动设备上都是一样的。正确维护您的时区,您不会解决问题。 如果手机的时区不正确,那么我会遇到一些问题,对吗?是否需要检查安卓手机的时间和时区是否正确。 您将始终以 UTC 格式传递时间 api 进行倒计时,并且在 Android 应用程序中,如果您将时间戳值视为 UTC,则如果您将其视为 UTC,则会给您错误的输出。【参考方案2】:

它发生在推送通知中,但在 android 应用程序中使用同步适配器的简单方法。同时同步所有客户端。

here is full description of sync adapter

如果有什么问题可以在下方留言!

【讨论】:

以上是关于如何从 Android 应用程序与服务器同步倒数计时器的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Android 手机上的 SQLite 数据库与服务器上的 MySQL 数据库同步?

倒数三天 | Android Study Jam 提交小测赢好礼

将本地db(Sqlite)与服务器db android同步

android 如何关闭NTP网络时间同步?

具有自动同步功能的 Android 应用

为 Android 实现 Firebase 服务器端倒数计时器?