【问题标题】:What is a good approach to handle sync between phone and website? [closed]处理手机和网站之间同步的好方法是什么? [关闭]
【发布时间】:2011-08-01 12:03:37
【问题描述】:

我有一个网站,用户可以在其中创建列表并将项目添加到这些列表中。我还在开发一个与网站通信的移动应用程序。如果用户在手机中有一个网络帐户并且他/她创建了一个新列表/项目,它也应该被发送到网络。电话列表/项目应始终与网络保持一致。当然,如果有人添加/删除/编辑列表或项目,这些更改应该在手机上更新。

因此,使用手机时一切正常,我只需将相同的信息发送到网络,就像我保存在我的应用程序中一样。很简单。

但是当网络发生变化时,更新手机列表和项目的最佳方式是什么?

  1. 自动更新 - 该应用程序每 XX 秒向 Web 服务器发送一个请求以查找更改并在必要时进行更新。

  2. 用户更新 - 用户必须点击某种“刷新”按钮才能刷新。

#1 耗电吗? 哪个是首选?

我正在使用 Titanium 为 iOS 和 Android 开发。

【问题讨论】:

    标签: android ios web-services mobile


    【解决方案1】:

    我提供了他们两个。您可以有一些编码算法,将信号发送到 Web 服务以决定是否更新。

    【讨论】:

    • 是的,手动更新可以始终存在,然后设置自动更新程序。你是什​​么意思“编码算法”?就像发送列表/项目的 MD5 哈希一样?我不能只使用时间戳吗?也许这很难在电话/网络上保持不变......
    • 在我的情况下,数据量很小,我使用了CRC
    • 我的想法是始终使用服务器上的时间戳。一旦在手机上完成更新并发送到服务器,服务器将响应手机存储的更新时间戳......或类似的东西:)
    • 听起来不错..但如果您打算将该时间戳与设备的日期进行比较,它可能会出错
    • 是的,这是个问题。如果用户在飞行模式或没有互联网连接时添加内容。然后我无法获得时间戳。另一方面,如果手机上没有时间戳,我会知道当有信号时必须将数据发送到手机,并获取时间戳和一些附加信息,如项目 ID 等。我得尝试一下:)谢谢!
    【解决方案2】:

    Google C2DM 或 iOS 推送通知呢? 不过,您必须跟踪用户设备 ID。但是当网站发生变化时,告诉设备最有效的方法是向它发送消息。 如果你投票,你会浪费电池。

    【讨论】:

    • 问题是可以从多个设备管理相同的列表。我猜这会使推送通知难以管理。也许我现在只能手动更新。
    猜你喜欢
    • 2019-06-17
    • 1970-01-01
    • 1970-01-01
    • 2010-10-10
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 2013-07-01
    • 1970-01-01
    相关资源
    最近更新 更多