我正在构建一个应用程序,需要允许用户将mp3文件下载到手机并在本地播放文件。我正在尝试决定渐进式网络应用程序(pwa)是否可以处理此用例,或者我是否需要为此构建传统的本机应用程序。
我对pwa的主要担忧是
是否支持下载大型媒体文件。该应用程序仅需要高达10 MB的音频文件存储空间,更不用说缓存应用程序本身以供离线使用。
Android是否支持pwa的后台播放模式。
有人知道这些问题的答案吗?
答案 0 :(得分:2)
您可以查看有关Offline Storage for Progressive Web Apps的文章。离线支持和可靠的性能是Progressive Web Apps中的常见功能。
对于URL可寻址资源,请使用Cache API(Service Worker的一部分)。对于所有其他数据,请使用IndexedDB(带有Promises包装器)。
您还可以查看此博客:Progressive Web Apps with Service Workers
ServiceWorker API为开发人员提供了非常精细的方法来拦截请求,缓存和伪造响应,为各种有趣的活动敞开大门,如:
- 离线访问某些网页
- 基于对下一个用户操作的预测来预备资产
- 在加载某些资源需要很长时间时提供缓存版本
- 使用规范网址重写始终要求的网址