Какая библиотека XMPP будет лучшим выбором в настоящее время для разработки под Android?
Я использую пропатченную библиотеку Smack, как предлагается во многих других вопросах здесь, в SO. Однако это исправленная версия Smack API, выпущенная два года назад. И хотя в целом это работает хорошо, я изучаю любые другие, более свежие варианты.
Я смотрел на официальный Smack API и после небольшого исследования кажется, что он может работать очень хорошо в настоящее время (хотя я еще не пробовал его в реальном приложении).
Есть еще одно решение, с которым я столкнулся - библиотека Beem aSMACK . Beem - довольно новый XMPP-клиент для Android, и, насколько я понимаю, они используют собственную исправленную версию aSMACK.
Наконец, есть aSMACK, но он также не обновлялся в течение достаточно долгого времени (как предлагает сайт).
Есть ли у вас какие-либо другие предложения или вы можете объяснить, почему я должен выбрать один из перечисленных выше?
Ответы:
Хлопать
Smack - это клиентская библиотека с открытым исходным кодом XMPP. Начиная с версии 4.1 он работает на Android. Для получения дополнительной информации ознакомьтесь с файлом «Smack 4.3 Readme» и посетите страницу проекта Smack в Ignite Realtime .
источник
Недавно я наткнулся на другое решение с открытым исходным кодом: jaxmpp2
jaxmpp2 также предназначен для Android (и Java SE). Больше я ничего не могу сказать по этому поводу, потому что я не использую jaxmpp2 в своих проектах Android / XMPP. Но это похоже на действительную альтернативу aSmack .
источник
Используйте qsmack для Android
https://code.google.com/p/qsmack/downloads/list
Это последняя сборка для Android
Я работал над чатом один на один, групповым чатом, передачей видео, передачей аудио, последним просмотренным, изменением регистрационного номера ... почти завершил приложение Whats. Я создал много плагинов на openfire
источник
Я хотел бы использовать libstrophe и jni. Цели его использования - кроссплатформенность, простота в использовании и производительность. libstrophe написана на c, так что легко написать make-файл для Android, так как зависимостью являются только openssl и expat lib. В моем случае я использую openssl и expat lib из libjingle, которые уже портированы на android и ios. (Просто нужно перенести файл gyp в Android Makefile или проект IOS).
Ниже мой Android Makefile
источник
Вы можете использовать клиентскую библиотеку Tigase JaXMPP - она очень универсальна, и вы можете использовать ее как для приложений JavaSE, так и для разработки под Android. Активно разрабатывается и Tigase Messenger для Android ( Play Store на его основе основан ).
Существует вики-страница с документацией по базовой библиотеке с парой примеров, и для подробностей вы должны обратиться к javadocs
источник
Использование Smack 4.1 Readme и Руководство по обновлению
Используя Android studio 2.3, недавно я реализовал демо очень простым способом.
-> Просто добавьте зависимость gradle в gradle уровня приложения, как показано ниже
-> Конфигурирование конфигурации соединения
ПРИМЕЧАНИЕ . Вызывайте это в AsyncTask или в другом фоновом потоке.
-> Используйте
isConnected()
иisAuthenticated()
-> Используйте
ChatManager
для добавленияchatListener
.источник
Вы можете использовать QuickBlox1 бесплатно.
Он предоставляет XMPP-сервер из коробки с множеством функций, о которых вы можете прочитать здесь http://quickblox.com/developers/Chat
Вот пример того, как начать использовать QuickBlox с библиотекой aSmack http://quickblox.com/developers/Android_XMPP_Chat_Sample
источник