3

我正在尝试在 android 上创建一个基于论坛的群聊应用程序。我需要能够通过聊天绘制和发送语音消息。

我对使用聊天协议的 IRC 和 XMPP 感到困惑。有人可以在这方面给我建议吗?

我觉得 IRC 更适合我的应用程序,因为它主要是为论坛中的群组交流而设计的,但我不确定 IRC 是否支持除了文本消息之外的任何其他内容。

4

1 回答 1

2

您可以使用编码系统(例如 Base64)以纯文本形式发送任何类型的二进制数据(图像、声音等)。

您必须注意选择的编码字符域不会与您的协议方法冲突来分隔消息。其他常见问题是消息协议允许的大小。也许您需要在协议中实现某种类型的分块消息和一些描述二进制内容的 MIME。

在这里您可以找到常见 B2T 编码标准的列表。

对于“实时”绘制,最简单的解决方案是向客户端发送快照图像,当前图像正在抽屉客户端中绘制。如果您在一秒钟内执行 10 次,您将获得每秒 10 帧的绘图动画。为了优化这一点,有一种称为 Delta 编码的技术,有时也称为 Delta 压缩。是一种以顺序数据(在本例中为图像)而不是完整文件之间的差异形式存储或传输数据的方式。因此,在客户端中,您只需计算两个“框架”之间的差异,而您在客户端中唯一需要做的就是将当前“框架”与差异“合并”以显示下一个“框架”。

于 2013-02-27T07:55:28.633 回答