如何使用 asmack 在 android 中创建多用户聊天应用程序

Posted

技术标签:

【中文标题】如何使用 asmack 在 android 中创建多用户聊天应用程序【英文标题】:How to create a multi user chat app in android using asmack 【发布时间】:2013-08-16 06:23:56 【问题描述】:

我正在尝试在 android 中创建一个应用程序,它将在多个用户之间共享数据。经过一番搜索,我发现 XMPP 可以满足我的要求,因为它支持多用户聊天。我能够实现 1 - 1 聊天。但不能进行多用户聊天。有人可以分享一些使用 aSmack lib 在 android 中的 MUC 示例代码吗?

【问题讨论】:

【参考方案1】:

您查看过 Openfire 社区网站上的 MUC docs 吗?他们提供了大量的示例代码。

此外,在 aSmack 中,您需要手动初始化一些静态代码/提供程序,就像在正常 smack 中一样,它会从 davlik vm 不使用的 META-INF 文件中读取这些。

例如:当您的活动/应用程序首次加载时调用它

 Class.forName(org.jivesoftware.smackx.muc.MultiUserChat.class.getName(), true, ctx.getClassLoader());

来自:InitStaticCode.java

或者直接调用

Context context = getApplicationContext();
SmackAndroid asmk = SmackAndroid.init(context);

这将初始化所有提供者。

顺便说一句,你使用的是什么服务器,它必须也支持 MUC 创建?

【讨论】:

嗨,詹姆斯,感谢您的帮助。我试图使用 googletalk 作为服务器。

以上是关于如何使用 asmack 在 android 中创建多用户聊天应用程序的主要内容,如果未能解决你的问题,请参考以下文章

aSmack 多用户房间创建错误

在 Android 中创建聊天室会出现错误:“item-not-found(404)

无法在 android 中创建聊天室并从服务器(tigase 服务器)没有响应

如何在android中创建群聊?

无法与 aSmack 4.0.2 建立新连接

带有 aSmack 库的 XMPP 出现错误?