13

我无法在 Android上使用Smack ,而aSmack可以完美运行?比较源代码时看起来有些相似,差异来自哪里?

Smack 和 aSmack 有什么区别?

4

4 回答 4

12

Smack < 4.1 在 Android 上不起作用,主要是因为 Android 上缺少 API(例如大多数 javax API)。这就是 aSmack 构建环境诞生的原因。这是一种修改 Smack 使其可以在 Android 上使用的方法。

除了许多微小的变化外,最大的变化是

  1. 禁用 Android 不支持的 XMPP SASL 身份验证方法
  2. 为 SASL 使用 apache Harmony 而不是 javax API

在执行任何 XMPP 相关操作之前,请务必阅读自述文件并初始化相关代码。

更多信息可以在@https ://github.com/Flowdalic/asmack/wiki/Modifications找到

于 2013-03-22T16:48:47.130 回答
5

正如项目描述所述,ASmack 为常规 Smack 添加了一组补丁。检查此对话以获取更多详细信息。

问候。

于 2010-10-14T22:22:24.230 回答
1

您可以在talkmyphone中看到事情是如何完成的。我认为他们正在使用带有 android 的 smack。

于 2010-10-14T13:08:33.773 回答
1

它修改了 Smack 以允许它在 Android 上运行。

我不确定这些更改是什么,除了更改 ProviderManager 机制以便它可以从 Android 友好目录加载 smack.providers XML 文件。默认情况下,Smack 从它自己的资源目录中加载它,这在 Android 中是无法访问的。

于 2011-08-08T16:07:30.717 回答