创建多聊天客户端[关闭]

Posted

技术标签:

【中文标题】创建多聊天客户端[关闭]【英文标题】:Creating a multi-chat client [closed] 【发布时间】:2011-02-01 12:42:09 【问题描述】:

如何在 android 中为 Yahoo、Gmail、AOL 等创建 XMPP 聊天客户端,Nimbizz、eBuddy、Fring 是如何做到的?

【问题讨论】:

我可以知道为什么这篇文章被否决了吗? 能否为Aol和MSN Xmpp客户端提供SERVER_HOST、SERVER_PORT、SERVICE_NAME 【参考方案1】:

您需要实现 IM 平台使用的每一个协议:

    GTALK (XMPP) Yahoo(专有协议) 美国在线(奥斯卡)

以此类推。

或者,您可以在 Android 设备上使用单一协议并使用代理 IM 服务器连接到所有帐户(我认为这是 FRING 和 EBUDDY 的做法,但不确定)。

【讨论】:

是否有供应商为此提供代理服务? @Ragunath Jawahar:好问题。我不知道。查看igniterealtime.org @Ragunath Jawahar:我所知道的只是为他们自己的应用程序这样做。【参考方案2】:

Pidgin IM client 有自己的libpurple,它实现了几乎所有主要的 IM 协议。他们的网站上有一些关于架构的细节和狗。

但是,基本上,除非 IM 网络已发布其协议规范,否则大多数多网络客户端必须进行逆向工程(和/或只是从 libpurple 之类的东西中获取详细信息)才能进行自己的实现。

【讨论】:

libpurple 是一个 C 库,有 Java 的端口吗? 也许 libpurple 可以使用 Android NDK 本地编译?【参考方案3】:

使用Smack API。它提供您所需的一切。

希望这会有所帮助。

【讨论】:

Think Smack 只能用于 XMPP 服务器。它不支持 OSCAR 或其他通信协议? @Ragunath:我不知道那么多细节。但尝试连接到 Gmail、Yahoo 和 MSN。它成功了。 太好了。能给雅虎和MSN服务器提供端口吗? @Ragunath:使用 Smack API 的注册类在 yahoo 和 msn 中注册。作为网关字符串,给出 yahoo.server 和 msn.server,其中“server”是您的 XMPP 服务器。 谢谢你,Harry,如有疑问,我可以回复你吗?

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

编程聊天室,从哪里开始? [关闭]

C#多线程聊天服务器,处理断开连接

带 GUI 的多线程客户端/服务器聊天室

linux C语言 TCP 多线程 简易聊天室

Android的聊天客户端[关闭]

客户端-服务器多线程聊天应用程序。客户端到客户端的通信