ios - 如何将我网站上的音频文件合并到我的 iOS 应用程序中?
问题描述
我有一个网站,里面有一些音频文件,我会不断更新。我正在为这个网站创建一个 iOS 应用程序。此类工作的最佳做法是什么,这样我就不必以不同的方式更新应用程序和网站的音频文件?
- 我是否需要创建一个 Web API 将音频文件从我的网站拉到我的应用程序?
- 将音频文件存储在数据库中并让网站和 iOS 应用程序从数据库中提取会更好吗?
如果其中任何一个更好,我希望指出正确的方向来学习如何做到这一点。任何提示都会很棒。
我在网上进行了研究,但似乎无法找到此类挑战的正确答案。该网站的代码非常简单,用 html 和 css 编写。
解决方案
以下是您需要做的简要概述:
- 创建服务器 API 以获取音频文件的 URL
- 从 iOS 应用程序使用 API
- 将音频文件数据(如 url 和 params)而不是文件本身存储到本地数据库
- 将文件下载到用户文档目录(或缓存目录,以您的情况更有意义)
- 在下一次应用启动时,再次检查 API
- 将 API 答案与您的本地数据库数据进行比较
- 从文档目录中删除不再需要的文件
- 将新数据存储到本地数据库
- 下载以前没有的新音频文件
- 冲洗并重复
相关文档:
- 网络请求
- Realm - 为 Swift iOS 项目选择的最简单的数据库
- 文件系统- 检查您应该将应用程序的文件放在哪里部分,也阅读所有内容,至少简要说明一下
- FileManager - 易于使用的类来存储文件
推荐阅读
- vue.js - 如何在 vuetify 中使用 v-btn 过滤产品列表?
- scala - 如何在 Seq 和 Vector 上调用过滤器
- embedded-linux - 如何在嵌入式 Linux 产品中序列化 MAC 地址?
- c# - JsonResult 的下拉菜单返回未定义
- python - 如何以最直接的方式在 matplotlib GLOBALLY 中使用我的任何系统字体?
- c# - 如何使用 C# 从 Visual Studio 传递管道变量
- python - 广播变量和 mapPartitions
- openshift - 公开注册表的 OpenShift 权限问题
- reactjs - 如何通过创建反应应用程序解决节点模块the-noun-project(api包装器)的cors问题
- css - 使用 css 的顶部定位水平滚动,使用变换时滚动条不可见