使用Smack for Android实现FCM与XMPP

我正在使用XMPP在我的 Android应用程序中实现聊天,我已经使用了Smack API.我的聊天工作正常,我在本地保存Android设备上的所有聊天消息.以下是我目前面临的一些问题.

>在聊天期间,如果某种方式连接丢失,那么它需要很长时间
再次重新连接,有时它甚至没有连接.即使之后
连接已连接,停止
发送聊天消息,因为它不再在另一边接收.我有
再次初始化资源但有时会有效
>如果我的USER断开连接,我想使用FCM发送消息
(离线).我已经为其他事情及其工作实施了FCM
精细.但我想知道如果其他用户处于离线状态,我如何将FCM与SMACK API一起使用.我正在尝试,但我不知道FCM的正确方法
使用XMPP实现.
>在聊天期间,我无法在另一侧收到用户的存在.

请建议我正确的XMPP(openfire)实施方式.所以,它像whatsapp一样无缝地工作.用户在互联网重新连接或活动打开后立即连接为新实例等.它的1对1聊天,即一次只有两个用户连接.在此先感谢,请不要降级我的问题,因为我是XMPP实施的新手.

解决方法

>对于连接丢失,您应该定义广播接收器,当连接断开时,关闭与openfire的连接,当它再次重新连接时,请确保已连接并授权. >对于离线用户,这是服务器端,如下所示,当用户发送消息进行开火检查,如果最终用户在线,然后它将消息转发给他,如果它处于离线状态,它将在数据库中保存消息,如果最终用户出现开火问题fire base将其发送给最终用户

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...