我正在构建一个聊天应用程序。 在我的应用中,我正在使用Firebase UI RecyclerView适配器接收消息。
如果您以前使用过此库,您将知道适配器将同时填充在线和离线值。 例如:如果您尝试发送一条消息,它将显示在适配器上,但是不会出现在接收者设备上,直到消息完全在服务器上为止。
这实际上使我想要的变得更容易,即:管理消息的状态。 该消息可以具有3种状态:正在发送,错误和已发送。
我想将消息状态从“发送”更改为“已发送”的最佳方法是使用云功能,但是遗憾的是,免费帐户中的云功能受到限制。
另一个选项是重新发送另一个Firebase更新,以在成功发送消息后更改消息的状态。
其他问题是错误状态。 Firebase不断尝试并尝试发送消息。即使您的应用程序处于脱机状态或与服务器的连接非常差。发送是否有某种超时类型?
所以,我的问题是: 1-发送消息后更改消息状态的最佳方法是什么。 2-如果出现错误或连接缓慢,是否可以使发送停止?