更新iOS应用程序时,Library/Caches中的文件是否被删除?
问题描述:
我有一个应用程序,它有一个存储在./Library/Caches
中的SQLite数据库。如果数据库不在那里(例如,当空间不足时,第一次安装或iOS清理缓存目录),那么我从应用程序包复制数据库的一个版本。到现在为止还挺好。现在我即将发布对App Store的更新,它将在数据库中的一个表中添加一个新列。我是否可以假定当应用程序更新时,其./Library/Caches
文件夹的内容将被删除,还是我需要开始对我的数据库进行版本控制,以便知道旧版本的存在时间?更新iOS应用程序时,Library/Caches中的文件是否被删除?
在模拟器和我的测试iPhone上,我没有问题,因为我先删除了应用程序,然后从Xcode重新安装了应用程序。
答
不,当您更新应用程序时,缓存目录不会(总是)被清除。您需要为您的数据库版本。
Aswell等NSUserDefaults或存储在您的文档文件夹中的数据不会受到您的应用程序更新的影响 – pmk 2012-01-09 12:14:54
谢谢史蒂芬,证实了我的怀疑。 – mluisbrown 2012-01-09 14:57:51