iOS应用程序,具有来自服务器的实时更新:套接字(使用流)或Apple推送通知服务?

时间:2011-11-22 14:40:26

标签: ios ios5 iostream apple-push-notifications

我正在尝试创建一个iOS 5应用程序,其中包含来自服务器的实时内容。它只会在应用程序运行时使用它们。

为了实现无需轮询的实时性,我一直在评估两条设计路线:


从应用程序创建套接字到服务器,并通过流交换信息。

使用标准HTTP与服务器通信,并通过应用程序的每个请求让服务器知道他们正在查看的内容。如果有新功能供用户使用,请发送Apple推送通知(没有可见警报),让应用知道它可以去下载新内容。


我认为套接字是可行的方式,但在我承诺之前我想要第二个意见,因为这是我第一次做出这样的事情!

2 个答案:

答案 0 :(得分:5)

套接字将是我的选择。我不知道您的应用程序的时间关键程度如何,但如果实时是必须的话,套接字可能会像APN一样表现得更好。

答案 1 :(得分:3)

真的需要“全实时”吗?从我的角度来看,我更喜欢http,因为它已经很好地集成到iOS SDK中。它易于理解,维护和实施,并且网上有大量文档。因此,每分钟左右一次http调查就足够了(取决于应用程序和用户数量)。请考虑防火墙!由于提供商或本地wifi的防火墙策略,可能会拒绝未知端口的流量。所以,如果你真的需要实时连接,我猜你必须使用套接字。