【问题标题】:IONIC2 Building a custom audio streaming app with firebaseIONIC2 使用 firebase 构建自定义音频流应用程序
【发布时间】:2017-07-08 17:08:45
【问题描述】:
我正在考虑制作一个应用程序,它可以播放一组特定的小音频文件,这些文件存储在 firebase 数据库或云上的任何其他数据库中。
文件的数量可能超过数百个,因此将所有文件包装在应用程序中可能不是最好的主意。
我真的很想知道如何解决这个问题。
当它被点击并播放时只从firebase下载所需的文件,同时缓存它以供将来播放似乎是合理的,但我不太确定如何实现它。
我很感激这方面的一些指示,谢谢
【问题讨论】:
标签:
firebase
ionic-framework
firebase-realtime-database
ionic2
【解决方案1】:
是的。你的想法是对的。
你可能会用到这些东西。
App UI - Ionic2 将为您提供一个非常漂亮且易于实现的平台来创建 UI。有关使用 Ionic2 的基础知识和详细信息,请参阅 this 文档。
本地存储 - 您可以使用它来存储下载的文件。在任何数据相对较大的应用程序中,使用本地存储是明智的选择。这有助于您减小要安装的初始应用的大小,并在需要时下载内容。
定义明确的数据库 - 现在,是使用非结构化 (No-SQL) 还是 结构化 (SQL)是您必须做出的第一选择。
如果只是内容 - 音频文件下载和播放而无需复杂的交叉查询数据库,那么您可以选择使用 非结构化 (No-SQL) 数据库,如 Firebase 数据库。
但是,如果您对结构化数据有很好的要求,请使用诸如“给我特定用户在过去 10 天内播放过的所有音频文件列表”或“给我所有播放过的用户/下载一个特定的音频文件超过 10 次”等等,那么你最好使用像 PostgreSQL 这样的结构化 (SQL) 数据库。
-
RxJS - 现在,这可能不是很重要,但是,如果你从一开始就使用它,这是一个不错的选择。优点是,例如在播放之前,您可能不必等待所有文件都下载完毕。将 Observables 和 Promises 用于这种机制。
可以在需要时提供具体帮助。希望这可以帮助。 :)