【发布时间】:2020-09-06 16:23:57
【问题描述】:
我想在 Facebook 或 WhatsApp 中实现类似于 Stories 功能的功能。
可能的方法:
起初,我想打开一个网络套接字,以便接收最新的 Stories 更新(来自朋友的新故事,或者如果故事被删除)。
还有另一种选择 - 使用 FCM 推送获取这些更新。 接收推送的服务使用 LocalBroadcastManager 广播“新故事”/“故事删除”广播,并且注册到此广播的合适活动接收该更新。
使用推送的方式,意味着即使应用被杀死,推送仍然可以触发。 好像有点浪费。
但考虑到可能会出现连接慢、掉线等问题,websocket 也是相当“脆弱”的。
另外,如果故事的 24 小时到期,我如何确保始终从故事列表视图中删除该故事而不继续显示它? 使用套接字,我们可能会失去连接。如果我们应该在收到故事时间到期的通知后重新连接,我们仍会显示该故事。
【问题讨论】:
标签: android sockets websocket firebase-cloud-messaging