Ios4 iPhone(IOS 4.x)上的插座连接

Ios4 iPhone(IOS 4.x)上的插座连接,ios4,Ios4,我正在开发一个聊天应用程序,需要连接到iPhone上的服务器。从iPhone发送数据包应该不会有问题 但我想知道,在移动环境下,iPhone是否可以持续或永久地与服务器建立传入套接字连接 或者我需要做什么才能激活连接?需要送点东西过来让它活着吗 谢谢 不确定您为什么希望聊天应用程序具有持久连接。。。我最好用短信式的模式。无论如何,Cocoa NSStream是基于NSSocket的,允许很多功能。看一看 对问题的答复。简而言之,我会做以下几点: 从服务器获取身份验证令牌。 如果必要的话,这也会考

我正在开发一个聊天应用程序,需要连接到iPhone上的服务器。从iPhone发送数据包应该不会有问题

但我想知道,在移动环境下,iPhone是否可以持续或永久地与服务器建立传入套接字连接

或者我需要做什么才能激活连接?需要送点东西过来让它活着吗


谢谢

不确定您为什么希望聊天应用程序具有持久连接。。。我最好用短信式的模式。无论如何,Cocoa NSStream是基于NSSocket的,允许很多功能。看一看

对问题的答复。简而言之,我会做以下几点:

从服务器获取身份验证令牌。 如果必要的话,这也会考虑到用户的存在,但现在我们讨论的是状态;一旦知道存在,服务器可能会向处于活动状态且联系人列表中有用户的客户端发送通知。 获取用户的联系人列表和联系人状态。 当邮件发送时,根据收件人状态进行处理,即,如果在线,则与其他用户通信;如果离线,则排队等待稍后的发送或拒绝。 一旦令牌过期,拒绝带有适当错误的通信,并使客户端请求新令牌。 从服务器到客户端的通信,可以基于拉或推模式。在第一种情况下,客户机定期发出请求并获取所有消息。这听起来可能不太好,但实际上,用户撰写和发送消息的频率是多少?一分钟几次?这不算太多。因此,抓取可能每5-10秒发生一次

对于推送模式,客户端必须能够侦听和接受连接

最后,检查SIP,会话启动协议。但不需要使用它的完整版本。只是一些基本的东西

这是非常粗略的,也许是简化的。我不知道你的聊天系统的目标复杂性。例如,最简单的事情也可以是服务器通过分发端点来实现客户机到客户机的通信,而客户机自己处理所有事情


祝你好运

不确定您为什么希望聊天应用程序具有持久连接。。。我最好用短信式的模式。无论如何,Cocoa NSStream是基于NSSocket的,允许很多功能。看一看

对问题的答复。简而言之,我会做以下几点:

从服务器获取身份验证令牌。 如果必要的话,这也会考虑到用户的存在,但现在我们讨论的是状态;一旦知道存在,服务器可能会向处于活动状态且联系人列表中有用户的客户端发送通知。 获取用户的联系人列表和联系人状态。 当邮件发送时,根据收件人状态进行处理,即,如果在线,则与其他用户通信;如果离线,则排队等待稍后的发送或拒绝。 一旦令牌过期,拒绝带有适当错误的通信,并使客户端请求新令牌。 从服务器到客户端的通信,可以基于拉或推模式。在第一种情况下,客户机定期发出请求并获取所有消息。这听起来可能不太好,但实际上,用户撰写和发送消息的频率是多少?一分钟几次?这不算太多。因此,抓取可能每5-10秒发生一次

对于推送模式,客户端必须能够侦听和接受连接

最后,检查SIP,会话启动协议。但不需要使用它的完整版本。只是一些基本的东西

这是非常粗略的,也许是简化的。我不知道你的聊天系统的目标复杂性。例如,最简单的事情也可以是服务器通过分发端点来实现客户机到客户机的通信,而客户机自己处理所有事情


祝你好运

超级过时的回复,但可能会帮助下一个人


我会使用xmppframework和jabber服务器。

超级过时的响应,但它可能会帮助下一个人


我会使用xmppframework和jabber服务器。

实际上,我们对实现它的方法持开放态度。对于更通用的方法,如Whatsapp或eBuddy的实现,有什么提示吗?@Schultz999:我们制作了一个iphone聊天应用程序,它带有套接字编程,并且总是显示用户在线,当用户离线时,它会显示为离线,我们不需要做任何额外的操作thing@GhostRider:嗯,客户端应用程序必须知道用户已脱机。它要么打电话刷新联系人列表状态,要么向它提供该信息。它不能凭空实现,对吗?那么你是怎么做的呢?事实上,我们对如何实施它持开放态度。有没有关于Whatsapp或eBuddy等更通用的实现方法的任何提示?@Schultz999:我们制作了一个iphone聊天应用程序,该应用程序使用套接字编程,并始终显示用户在线和何时离线
我们不需要做任何额外的工作thing@GhostRider:嗯,客户端应用程序必须知道某个用户脱机了。它要么打电话刷新联系人列表状态,要么向它提供该信息。它不能凭空实现,对吗?那么你该怎么做呢?SkyEagle888:你可以在你的应用程序中使用cllocation updater,在每个位置更新套接字将调用并更新数据,我们这样做SkyEagle888:你可以在应用程序中使用cllocation updater,在每个位置更新套接字将调用并更新数据,我们做这件事