Implementing smack in android , after obfuscation getting error at runtime from smack library

Obfuscation tags used for Smack lib:

-dontwarn org.xmlpull.v1.**

-keep class org.jivesoftware.** { *; }
-keep class org.xmlpull.** { *; }
-keep class org.bouncycastle.jcajce.provider.** { *; }

-keep class org.jivesoftware.smack.** { *; }
-keep class org.jivesoftware.smackx.** { *; }
-keepattributes Signature

At runtime getting this error

2023-01-12 12:28:56.673 32664-377/com.panasonic.promeet.debug E/AndroidRuntime: FATAL EXCEPTION: Thread-17
    Process: com.panasonic.promeet.debug, PID: 32664
    java.util.ServiceConfigurationError: z7.d: Provider a8.b could not be instantiated
        at java.util.ServiceLoader.fail(ServiceLoader.java:233)
        at java.util.ServiceLoader.-$$Nest$smfail(Unknown Source:0)
        at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:392)
        at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:416)
        at java.util.ServiceLoader$1.next(ServiceLoader.java:494)
        at z7.a.a(SmackXmlParser.java:44)
        at z7.a.b(SmackXmlParser.java:65)
        at v7.a0.h(PacketParserUtils.java:80)
        at n6.c0.d(SmackInitialization.java:159)
        at n6.c0.c(SmackInitialization.java:154)
        at n6.c0.<clinit>(SmackInitialization.java:103)
        at n6.x.b(Smack.java:38)
        at n6.x.a(Smack.java:64)
        at n6.p.<clinit>(ConnectionConfiguration.java:116)
        at t7.l.z(XMPPTCPConnectionConfiguration.java:64)
        at c4.e.n(XMPPConfigManager.java:189)
        at c4.e.q(XMPPConfigManager.java:292)
        at com.panasonic.promeet.utils.ProMeetApplication$d.run(ProMeetApplication.java:296)
        at java.lang.Thread.run(Thread.java:1012)
     Caused by: java.lang.ExceptionInInitializerError
        at java.lang.Class.newInstance(Native Method)
        at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:388)
        at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:416) 
        at java.util.ServiceLoader$1.next(ServiceLoader.java:494) 
        at z7.a.a(SmackXmlParser.java:44) 
        at z7.a.b(SmackXmlParser.java:65) 
        at v7.a0.h(PacketParserUtils.java:80) 
        at n6.c0.d(SmackInitialization.java:159) 
        at n6.c0.c(SmackInitialization.java:154) 
        at n6.c0.<clinit>(SmackInitialization.java:103) 
        at n6.x.b(Smack.java:38) 
        at n6.x.a(Smack.java:64) 
        at n6.p.<clinit>(ConnectionConfiguration.java:116) 
        at t7.l.z(XMPPTCPConnectionConfiguration.java:64) 
        at c4.e.n(XMPPConfigManager.java:189) 
        at c4.e.q(XMPPConfigManager.java:292) 
        at com.panasonic.promeet.utils.ProMeetApplication$d.run(ProMeetApplication.java:296) 
        at java.lang.Thread.run(Thread.java:1012) 
     Caused by: org.xmlpull.v1.XmlPullParserException: unsupported feature: http://xmlpull.org/v1/doc/features.html#xml-roundtrip (position:START_DOCUMENT null@1:1) 
        at com.android.org.kxml2.io.KXmlParser.setFeature(KXmlParser.java:2102)

In this line : For Initializing Xmpp Tcp Connection

    XMPPTCPConnectionConfiguration.Builder builder = XMPPTCPConnectionConfiguration.builder();

Internally having issue in this line in smack library:

com.android.org.kxml2.io.KXmlParser.setFeature(KXmlParser.java:2102)

This exception only comes in obfuscated code otherwise its working absolutely fine .

Cross post on Stack Overflow:

Hello , yes i posted the same over here as well as somebody posted a similar issue , but his solution didn’t work for me . so for visibility i posted here too , if somebody is able to answer .
Its a bit urgent for me as I am in the last phase , and had to obfuscate before publishing the app .
This issue https://discourse.igniterealtime.org/t/exception-when-trying-to-connect-but-only-in-release-mode/92126/6

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.