5

简单的问题 - Snapchat 故事如何加载如此之快,即使我“跳过”一个项目,下一个项目也总是准备好?

Snapchat 故事是图像和视频的混合体,只要点击屏幕,下一个项目就会立即开始,无论是图像还是视频。我从未在应用程序中看到任何延迟,我想知道

他们是怎么做到的呢?一旦应用程序启动,他们是否会缓存所有内容(极不可能)?在您观看故事时,他们是否会不断预加载即将发布的项目?当我点击故事时,他们会加载所有内容吗?我不明白完美内容流背后的“魔力”。另外:后端提供什么?资源清单?

有谁知道他们是怎么做到的?Yeti 或 Fleek 等其他应用程序几乎都在做同样的事情,以同样完美的方式执行。我是一个相当不错的 iOS 开发人员,但我不知道这里使用的方法。

4

1 回答 1

1

该用例允许在应用程序端进行后台准备,并在后端进行缓存。

所以我会怎么做是这样的:

  • 当应用程序成为焦点时,让后台线程找到一些指向紧随其后的故事的链接。此外,如果您接近缓存内容的末尾,请多看一些。可能有某种视觉动画,所以人们不能轻弹到最后而不给应用程序加载一些数据的机会。
  • 既然你知道接下来会发生什么,后端可以将所有内容移动到缓存中,在那里它会感觉很好而且很活泼。SnapChat 不应该是持久的这一事实有很大帮助,因为一旦收件人看到了这些内容,您就可以将其从缓存中删除。此外,由于收件人没有编辑信息,因此您没有缓存一致性问题(实际上您可以编辑内容吗?有一段时间没看过了)。
于 2016-02-09T08:38:39.793 回答