【问题标题】:Best solution for pulling updates of content from back end server?从后端服务器提取内容更新的最佳解决方案?
【发布时间】:2012-03-05 16:31:04
【问题描述】:

一个使用后端服务器内容的 iOS 应用。内容其实不需要高频改动,只是在修改有缺陷的内容的情况下进行改动。

Apple Push Notification 应该是将更新通知推送到安装了该应用程序的设备的最佳解决方案,然后用户可以在查看通知后按下“更新”选项按钮以拉取最新内容。

问题是:这是解决此类情况的最佳解决方案吗?如果不是,为什么?和任何更好的解决方案? 或者每次启动应用时只拉取最新的内容怎么样?

【问题讨论】:

    标签: ios apple-push-notifications


    【解决方案1】:

    我基本上同意Vignesh's answer,但考虑到 APNS 还需要服务器端的工作,我将从轮询每个进入前台事件开始,因为这似乎是最简单的解决方案,然后切换到 APNS,当服务器侧已经准备好了,因为它需要的时间真的更少,因为所有的代码都已经写好了。

    更新

    为了改进轮询解决方案,您可以在 NSUserDefaults 中添加最后更新日期,以便在一天左右执行一次更新。您也可以将后端服务器代理方法调用(请求发送和处理)包装到后台任务中,以防止用户点击主页或执行多线程手势中断它。

    【讨论】:

    • 同意最简单的方法是在特定时间段内通过向后端服务器发送更新请求进行轮询。下一个问题是什么时候?显然“应用程序启动”不是好时机,因为一旦启动它就会进入后台状态。最终的最佳方法是基于 APN,但需要付出很多努力。
    • 我没有得到“显然“应用程序启动”不是好时机,因为一旦启动它就会进入后台状态”。你能澄清一下吗?您是否正在开发在后台运行的应用程序?即使是这样,它也不会在启动后立即进入后台,只有用户将其转移到后台。
    • 如果推送通知没有送达怎么办? APNS 不保证消息的传递是吗?
    【解决方案2】:

    APNS 是最好的方法,因为您已经指定了“数据不需要高频更改”。在我看来,每次轮询服务器以获取这种静态类型的数据是过度的和不必要的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-28
      • 2013-10-19
      相关资源
      最近更新 更多