如何为 iPhone 制作聊天客户端 [关闭]

Posted

技术标签:

【中文标题】如何为 iPhone 制作聊天客户端 [关闭]【英文标题】:How to make a chat client for the iPhone [closed] 【发布时间】:2011-04-10 22:30:13 【问题描述】:

大家好,我正在开始开发一个将实现聊天界面的原生 iPhone 应用程序。到目前为止,实现似乎相当复杂,我读过 Websockets、XMPP/Jabber 和原始 TCP/IP 套接字,但不知道该使用哪个。客户端将使用 Objective-C 进行编程,而我想使用 C# 对服务器进行编程(并且不必为托管服务支付 100 美元/月)。

你们有什么建议?

【问题讨论】:

它到底是干什么用的?存在聊天客户端;这是为了特殊的内部开发还是什么?通常,要不惜一切代价避免服务器开销……如果我们知道它的用途,我们可能会给出更好的答案。 嗯,这是一个非常基础的聊天,只需要在一个聊天室发送和接收消息(会有几个聊天室你可以加入)。该应用程序中还将有其他关于如何创建聊天室的自定义功能,并将具有自定义用户配置文件。除了如何从聊天室发送和接收实际消息外,我了解如何完成所有这些操作(数据库等) 如果我能进一步澄清,请告诉我,从正确的技术开始非常重要。谢谢! 【参考方案1】:

我建议使用 XMPP/Jabber 之类的东西,因为现在已经有大量的库适用于几乎所有的语言。这将使您可以专注于应用程序的独特方面,而不必担心实现协议。查看the XMPP 网站以获取客户端和服务器的库列表。

关于托管,C# 可能很难找到免费托管,因为它需要 Windows 安装,需要非免费许可证。你可以通过像 GoDaddy 这样的人找到便宜的 Windows 主机,但你找不到免费的(至少我对此表示怀疑)。

【讨论】:

我们已经在 godaddy 托管,这很好,只要我们不为专用服务器付费 =)。那么如何在服务器上实现 XMPP/Jabber 呢?它是通过网页工作还是什么?我发现这些新协议令人费解,过去只需要打开客户端和服务器之间的连接的好日子发生了什么?大声笑 @Rob,基本上,它可能取决于库。您实际上可能能够找到一个功能齐全的 Jabber 服务器,您不需要以任何方式进行修改,您只需对其进行一些配置,然后让它运行。 这台服务器是如何设置的呢?我什至编写自己的协议也没有问题,但我对如何做所有服务器端的事情感到非常困惑。我可以只托管一个获取 TCP/IP 连接的 C# 程序,还是应该通过网页来做?就像我以前从未做过这样的事情,我什至不知道从哪里开始。 如果您获得大量应用安装,GoDaddy 不会削减它。 @Rob,这取决于协议,但您可能在服务器上有一个 TCP 套接字。客户端连接到该套接字并在会话的生命周期内保持连接。它们通过该套接字来回传递数据。使用 Web 服务器可能不是一个好主意,因为要确定谁“在线”和谁不“在线”会更加困难。但是,如果您不需要任何会话概念,那么它就可以正常工作。最终,您需要阅读协议规范以准确了解服务器的行为方式。有很多方法可以做到这一点。

以上是关于如何为 iPhone 制作聊天客户端 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何为 80 端口上的网站制作 Node.js 多租户?

iPhone应用商店,如何为客户发布预览应用

如何为我的 Flash 页面创建 iPhone 应用程序? [关闭]

如何为Android Market和App Store制作二维码[关闭]

Webmessenger、IM、聊天客户端 - 基于 Jabber? (如 Facebook)[关闭]

如何为 ChatApp 制作 ListView 来管理所有聊天?