我有一个用Swift编写的应用程序类似于音板。目前我在应用程序主包中只有一堆mp3。是否可以远程添加更多的mp3到应用程序主包,然后更改代码中的变量以考虑新的MP3?我想要它,以便我可以动态添加新的mp3,而无需通过整个应用程序审查过程。理想情况下,用户可以在第二天打开应用程序并发现添加了15个新的mp3而无需下载更新。这有可能吗?
答案 0 :(得分:1)
您无法在iOS上写入主要捆绑包。它的内容是 加密签名作为App Store提交的一部分 处理;修改其内容将阻止应用程序 运行
来自THIS的答案。
您可以从这篇文章中获得更多信息:File write with [NSBundle mainBundle] fails。
File System Programming Guide:
<强>&LT; APPLICATION_HOME&GT; /AppName.app 强>
这是包含应用程序本身的包目录。别写了 这个目录的任何东西。为了防止篡改,捆绑目录 在安装时签署。写入此目录会更改 签名并阻止您的应用再次启动。
<强>&LT; APPLICATION_HOME&GT; /文档/ 强>
使用此目录存储关键用户文档和应用数据 文件。关键数据是您的应用无法重新创建的任何数据, 例如用户生成的内容。该目录的内容可以是 通过文件共享提供给用户。这个内容 目录由iTunes备份。
<强>&LT; APPLICATION_HOME&GT; /库/ 强>
此目录是非用户文件的顶级目录 数据文件。您通常将文件放在几个标准之一 子目录,但您也可以为文件创建自定义子目录 您想要备份但不要向用户公开。你不应该使用 此目录用于用户数据文件。该目录的内容 (Caches子目录除外)由备份 iTunes中。有关Library目录的其他信息,请参阅 “图书馆目录存储特定于应用程序的文件。”
如果要将文件写入文档目录,可以阅读THIS。
希望这会有所帮助。