0
votes

Can any one suggest me a QT5 cross mobile platform library and APIs of XMPP protocol to develop a mobile cross platform chat client. This is my college project.

I'm stoped for three month and searching for suitable library and now, Not started yet!!!.

I have a few time to present and speack.

I am disappoint now.

Just a QT5 based XMPP Liberary for mobile programming (Android , IOS and maybe etc)

2
Have you seen QXMPP? It's here : github.com/qxmpp-project/qxmppNejat
Yes, It's seems developed for QT4 not QT5 and win32 , win64 , symbian , linux , macos platforms. Not Android and IOS. If i mistake or You know some version of QXMPP that can work for me please tell me. And i don't know why i have these down votes.Rancbar
It seems that it supports Qt 5 and mobile. At least it supports some features in Android and ios not all of them. Have you tried to use it in an Android application to see if it compiles and works?Nejat
Thanks a lot. I tried gloox in past because it is ansi C++ and i think it will work but it wouldn't. I'll have a try with QXMPP and hope to work and I will write here the results. I am very grateful of your answer and hope to your more help.Rancbar

2 Answers

0
votes

Swiften ( http://swift.im/swiften/ ) is not Qt, but is plain old C++ with Boost, and is used in the Swift client, which is Qt. It's cross platform desktop, iOS, Android. Not quite what you asked for, but usable in that environment.

(Bias: I'm responsible for those projects)

0
votes

QXmpp is quite nice for Qt development.

When using Qt, the advantages in comparison to gloox or Swiften are obviously:

  • No need to convert any types (like QString to std::string)
  • No different signals from different libraries (in case of Swiften: boost signals and Qt signals)
  • No additional dependencies, only Qt, so creating builds for all platforms is easier

Another point that can be positive (but in some cases might also be negative) is that QXmpp's classes are mostly monolithic. This makes the whole architecture very simple and easy to use, but not always that nicely extensible. Extending from outside of the library is however possible.

QXmpp uses DOM trees to parse the XML elements. The serialization is done using an XML stream writer.

(like Kev I'm biased here: I'm responsible for QXmpp)