I got it working without fragments… But I had to make some changes to the code. I only get this:
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.disco.ServiceDiscoveryManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.xhtmlim.XHTMLManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.muc.MultiUserChat’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.bytestreams.ibb.InBandBytestreamManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.bytestreams.socks5.Socks5BytestreamManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.filetransfer.FileTransferManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.iqlast.LastActivityManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.commands.AdHocCommandManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.ping.PingManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.privacy.PrivacyListManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.time.EntityTimeManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.SmackConfiguration loadSmackClass
WARNING: A startup class ‘org.jivesoftware.smackx.vcardtemp.VCardManager’ could not be loaded.
Mai 08, 2014 5:03:01 PM org.jivesoftware.smack.initializer.UrlProviderFileInitializer initialize
This is normal, because the corresponding classes are not visible to the core. From my point of view, it would be preferable to remove this implicit dependency between the core and the extension bundle. The trade-off is, that the user has to call something like “Extensions.initialize()” to trigger the provider addition.
What’s your opinon? Should we stay on the fragment approach or should we add an initializer to the extension bundle?