我无法使用 SMACK 在Android上 Asmack 正常工作?当比较源代码时,它看起来有些相似,差异来自何处?

Smack和Asmack有什么区别?

有帮助吗?

解决方案

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

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

  1. 禁用Android上不支持的XMPP SASL验证方法
  2. 将Apache Harmony用于SASL代替Javax API

确保阅读 读书我 并在执行任何XMPP相关的操作之前初始化相关代码。

可以找到更多信息 @ https://github.com/flowdalic/asmack/wiki/modifications

其他提示

正如项目描述所述,ASMACK在常规Smack中添加了一组补丁。检查一下 对话 有关更多详细信息。

问候。

您可以看到如何在 Talkmyphone. 。我认为他们正在使用Android Smack。

它修改了SMACK以允许其在Android上工作。

我不确定这些更改是什么,除了更改ProvidManager机制外,它可以从Android友好目录中加载Smack.providers XML文件。默认情况下,Smack从其自己的资源目录中加载了此功能,该目录在Android中无法达到。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top