导轨和iPhone本机应用程序之间的插座连接



我有一个iPhone应用程序,上面有rails作为后端服务器。

现在我需要使用套接字连接实现聊天功能。

许多示例向您展示了如何在浏览器中使用套接字实现聊天。

我在这里需要的是如何实现一个应用程序,您可以在 rails 应用程序中创建套接字服务器,以及 iphone 应用程序中的客户端,该客户端侦听我给他们的频道。

我尝试使用 faye(仅给出如何在浏览器中实现客户端的示例)并使用适用于 iphone 的 fayeObjC 库来创建客户端,但无法收听此库中的频道。我知道我一定在这里实施错了。

我也会在这里分享我的代码,但首先我需要知道有没有比这更好的解决方案?

我也感谢一些指向套接字服务器在轨道中并且客户端是 iphone 应用程序的示例的链接。

感谢任何帮助,并且主要需要一个正确的方向来实施它。


更新

我再次尝试了 faye 组合,它奏效了。虽然仍在寻找更多的解决方案。

您可以检查 TCP 套接字

  • http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-server
  • 使用 Ruby 的聊天应用程序
  • http://quickblox.com/modules/chat/
  • http://caydenliew.com/2011/11/ios-mac-os-communication-with-asyncsocket/
  • http://www.macresearch.org/cocoa-scientists-part-xxix-message

下一个链接是全面的网络指南 - 使用互联网套接字

您必须记住点对点通信 (Chat) 的两个主要问题:可访问性以及如何在应用程序处于后台时接收新消息(获取通知)。最后,您可以使用APNS方法:将向iPhone推送不可见的通知,指示已准备好阅读新消息。因此,您的应用程序将请求未读消息(WhatsApp等应用程序所做的)。

除了TCP套接字,您还可以使用websockets(HTTP - 因此没有防火墙问题)。同类最佳 - Socket.IO。在这里,您将找到wiki https://github.com/learnboost/socket.io/wiki(您还将找到Ruby的扩展)

下面是用于 socket.io 和node.js后端的iOS聊天客户端的示例

贾伯

另一种选择:XMPP - "代表可扩展消息传递和状态协议。这样的协议是开放标准的,面向消息交换(由Jabber社区构建和维护)。消息交换几乎实时发生,因此它是构建类似聊天应用程序的理想基础架构。该协议还实现了一种机制来通知状态信息(无论用户是否在线)和维护联系人列表。XMPP是一个全面的协议,也被谷歌等大公司采用,以构建他们的即时通讯服务。

在这里,您将找到有关开发适用于 iOS 的 Jabber 客户端的所有信息(使用户能够登录、添加好友和发送消息;如何安装和配置 Jabber 服务器、创建帐户以及从 iOS 应用程序 http://mobile.tutsplus.com/tutorials/iphone/building-a-jabber-client-for-ios-server-setup/与服务器交互

我知道 SocketRocket by square 是一个强大的原生 Objective-C 库。但它没有提供您似乎正在寻找的通道抽象。

如果您考虑外包 WebSocket 连接,那么您可以使用像 Pusher 这样的托管服务,我为之工作。您可以使用推送器gem在通道上发布消息(触发事件)。您可以使用Pusher的Objective-C库之一订阅频道并接收消息。

其他解决方案也将具有Objective-C库,您可以通过此实时Web技术指南找到它们的列表。

相关内容

  • 没有找到相关文章

最新更新