5

我正在尝试在IOS中实现聊天应用程序。一般来说,我们使用两个 php 文件,一个用于发布消息(发送者),另一个用于检索消息(接收者)。

我想完成以下工作:考虑A(发送者)和B(接收者)。

A向B发送消息。A正在等待B的回复。所以我需要调用post-api.php来发送消息,并且在接收方(B)我需要使用getapi.php检索 当B回复A时它必须自动出现在我的 A 的收件箱(实时聊天框)中,没有调用getapi.php。我知道这种情况是不可能的。但是有什么解决方案或方法可以让我的聊天应用程序像skypefacebookchat一样工作。

4

2 回答 2

8

有多种方法可以实现聊天功能。

  1. 轮询:使用 NSTimer 向服务器发送请求并在特定时间间隔后及时处理来自服务器的响应(但请记住,这会导致电池耗尽)。

  2. 使用 APNS:使用官方的 Apple 推送通知实现,每当服务器端的聊天表中有新条目时,使用推送通知将通知发送到特定设备,并使用委托方法处理通知(尽管不是 100% 可靠)。使用推送通知

  3. 使用套接字编程:使用套接字编程,您可以在客户端(设备)和服务器之间建立专用连接。我在教程末尾提供了包含源代码的链接。使用套接字编程

于 2013-08-20T08:38:37.580 回答
1

如您所知,如果没有 getapi.php,则无法更新聊天列表,因此您需要进行如下管理:您需要使用 NSTimer 并在计时器的帮助下,您需要在特定时间间隔后调用您的 getapi.php 服务让在 2 分钟后说,以便刷新聊天并让用户得到回复,据我所知,这是唯一可能的方式。

于 2013-08-20T07:28:05.667 回答