Right...
Smack seems to be the obvious best library to wrap into a B4A library but it's not compatible with Android.
So that's why someone developed asmack, asmack basically being smack patched so that it is compatible with Android.
The latest version of smack is
3.3.2, Feb 5 2012.
The latest version of asmack is dated 7th May 2010 here:
asmack - Android build environment and patches for smack - Google Project Hosting, and simply labelled version 7 here:
https://github.com/Flowdalic/asmack/downloads.
So wrapping asmack would be wrapping an old and out of date library.
Asmackservice seems to be at least 2 years old so again not a good candidate to be wrapped into a B4A library.
I've also found
qsmack, an Android compatible version of the latest smack 3.2.2 which seems to be the best option so far.
But the qsmack author does state:
Warning: I do NOT testing anything of this version ! Please testing it by yourself if you are interesting in this library !.
So qsmack is up to date but entirely untested - doesn't sound quite so promising after all!
I've no real knowledge of what an XMPP library is required to do so i don't know if the
Google APIs Client Library for Java is a substitute for an XMPP library or an alternative.
Hopefully someone can explain?
So that sums up what i'd need to decide before even starting writing any code.
Then i'd need to start writing some basic code that'd enable me to bit by bit get a better understanding of the XMPP mechanism.
I can then look at adding more advanced stuff to the B4A library.
So what shall i do?
- Gamble and wrap the new but untested qsmack library?
- Wrap an old and out dated (but tested and known to work) asmack library?
- Look at the old and out of date asmackservice.
- See if Google APIs Client Library for Java can do all that a XMPP client is required to do.
Martin.