java - Smack XMPP android 连接时崩溃

标签 java android xmpp smack

我将 Smack XMPP 用于 Android 应用程序,之前一切都运行得非常顺利,除了今天早上它只是无缘无故地开始崩溃。 这是我在 Gradle 中包含的内容:

compile 'org.igniterealtime.smack:smack-android:4.2.0'
compile 'org.igniterealtime.smack:smack-tcp:4.2.0'
compile 'org.igniterealtime.smack:smack-android-extensions:4.2.0' 

并且日志正在打印这个错误

java.lang.ExceptionInInitializerError at de.measite.minidns.DNSName.from(DNSName.java:287) at de.measite.minidns.dnssec.DNSSECClient.(DNSSECClient.java:48) at de.measite.minidns.hla.DnssecResolverApi.(DnssecResolverApi.java:47) at de.measite.minidns.hla.DnssecResolverApi.(DnssecResolverApi.java:38) at de.measite.minidns.hla.DnssecResolverApi.(DnssecResolverApi.java:31) at org.jivesoftware.smack.util.dns.minidns.MiniDnsResolver.(MiniDnsResolver.java:54) at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:324) at org.jivesoftware.smack.SmackInitialization.loadSmackClass(SmackInitialization.java:218) private static final DNSName DEFAULT_DLV = DNSName.from("dlv.isc.org");

在这条线上

  XMPPTCPConnectionConfiguration.Builder config = XMPPTCPConnectionConfiguration
                .builder();

我搜索了很多,但找不到任何东西。

谢谢

最佳答案

嗨,我也遇到了这个问题。

问题来自一个依赖项“de.measite.minidns”,该依赖项推送了一个带有错误的更新。所以我通过排除自动依赖并包括最后一个稳定版本来修复它。它解决了我的问题。希望对你们有用

    compile ('org.igniterealtime.smack:smack-android:4.2.0') {
      exclude  group:'de.measite.minidns'
    }
    compile ('org.igniterealtime.smack:smack-tcp:4.2.0') {
      exclude  group:'de.measite.minidns'
    }
    compile group: 'de.measite.minidns', name: 'minidns-hla', version: 
    '0.2.2'

关于java - Smack XMPP android 连接时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46237516/

相关文章:

android - 如何显示图片?

java - Android savedInstanceState 总是返回 null

java - 如何使用 Java 客户端更新 Elastic Search 上的条目

java - 无法在 Eclipse 中从 Object 转换为 int

android - 如何在android中使用任务堆栈创建后退按钮?

android - 如何从xmpp服务器smack库获取聊天记录

java - 如何检索 IQ 响应

testing - 使用 Jmeter 和 Blazemeter 对 XMPP 聊天应用程序进行性能测试

java - jaxb 和 jax-ws 中的循环引用

java - MDC 记录 Vertx