我一直在调试我的应用成功下载文件并将其复制到Documents目录的问题。最近,应用程序无法在后续启动应用程序时打开下载的文件。我一直打印出文件网址,这是我最初下载和打开文件时看到的内容:
unzipped /var/mobile/Containers/Data/Application/9AC69C00-228E-482F-99D8-DD8F214FCE88/Documents/3.atcase to
/var/mobile/Containers/Data/Application/9AC69C00-228E-482F-99D8-DD8F214FCE88/Library/Application Support/thebundleID/current-case
你可以看到UUID是相同的,但是当我再次启动应用程序时,我看到了:
couldn't unzip /var/mobile/Containers/Data/Application/9AC69C00-228E-482F-99D8-DD8F214FCE88/Documents/3.atcase to
/var/mobile/Containers/Data/Application/C18E7EFA-C0D0-4213-AF85-F5BC0D2A4207/Library/Application Support/thebundleID/current-case
这次UUID似乎有所不同。
答案 0 :(得分:3)
我会暂时说答案是肯定的,应用程序容器文件夹中使用的UUID似乎每次运行时都会发生变化,但我很乐意得到更有经验的开发人员的确认。< / p>
我的问题的解决方案很简单:不要在数据库中存储绝对文件URL。现在,每次运行应用程序时,都会相对于Documents目录URL构建文件的URL。由于我以常规方式命名文件,因此无需存储URL。