After 2 years working on this app I've decided to make it an open source on GitHub, hope for more people contributes to it and show smack library power and how beautiful is.
This app is not meant to be an open source and doesn't take into account that other developer may work on it, so the code is not organised or clean and kinda messy (this will give an idea about how messy it is: https://github.com/wmhameed/X-Messenger/blob/master/XMPPManager.java.
I have two choice now whether to submit the app code as it is uncleaned and has many unused code lines and classes which I don't like because it will make other developers confused, or to wait couple of months to start work again on the app, this is the only reason make me holding the source code and not sharing it yet.
Part of the files tree :
Note that the app is doing almost everything that other messengers do except group chat which is under development.
List of some app features
- Registering with phone number
- Syncing contacts.
- Maintain a TCP connection and working in the background to receive message (can relay on it without using push notification)
- Custom emoticon.
- Send out of band files
- Making WebRTC voice and video calls
I really want to share the source to help other developers , hope this app will became as a show case for smack and as sample Android App for it.
the app is borrowing some GUI and native code from Telegram and I'm planing to replace it in the future.
Current used smack version : 4.2.0-beta1