我正在尝试开发聊天应用。我用php和mysql创建了我的web服务。 Web服务的响应是json格式。
迅速;我将一些参数发布到网址并检索json响应然后显示消息。我使用nstimer来发布和检索我的json响应的响应。如果有新消息则显示它。
我不想使用nstimer来检索邮件。有没有更好的方法呢?
谢谢
答案 0 :(得分:1)
如果您有REST-ful服务,定期轮询几乎是执行此操作的标准方法。
您可以考虑使用实时更新机制来传递邮件,或者通知客户端您需要与服务器同步,而不是轮询。 Google开发了一个非常强大的跨平台解决方案,允许您使用推送通知协议实现此目标:
答案 1 :(得分:1)
看看这个tutorial。它使用XMPP来回传递消息。
但如果你想自己做,只是为了了解你有两个选择:
在GET
和POST
处使用restful api。你的计时器并不坏。我建议更改应用程序在后台的时间或根本不更改。您可以使用parse之类的内容发送PUSH通知,并在用户重新启动应用时重新启动GET
来电。
您可以使用WebSockets。 WebSockets的工作方式很像BSD套接字,除了它们包装在HTTP(S)隧道中。使用Web套接字,您可以检查您要查找的客户端是否已连接。如果是,您只需向他们发送消息即可。如果不是,则执行类似于选项一的操作,使用parse向他们发送通知。
希望有所帮助。
修改强>
由于解析正在关闭,您可以使用其他类似的服务。我从未使用过kinvey,但似乎他们也提供类似上面提到的push notification解析的服务