我正在努力解决这个问题。
我的应用需要在后台创建一些文件。它在临时文件夹中创建一个临时文件,然后在/ Documents中创建一个文件夹,其中包含一些文件。
当我的应用程序在调试中编译时,它可以工作。当我在发行版中对其进行编译时,并且仅当激活密码时,才创建第一组文件。第二组仅看到在Documents内部创建文件夹,但是不能创建文件,也不能在临时文件夹或Documents / newcreatedfolder中创建文件。
仅当在发行版中编译了应用程序并启用了密码时,才会发生这种情况。
我猜想这与数据保护和手机锁定时无法创建新文件有关。是否有一些权利可以使我的应用程序在后台和锁定状态下创建和写入新文件?
最佳答案
文件受标准iOS文件保护策略锁定,因此在手机锁定后,所有文件均被加密。我的解决方案是这样,因为我不需要这些文件的安全性:
[[NSFileManager defaultManager] setAttributes:@{NSFileProtectionKey:NSFileProtectionNone} ofItemAtPath:[GlobalProvider tmpFolder] error:NULL];
[[NSFileManager defaultManager] setAttributes:@{NSFileProtectionKey:NSFileProtectionNone} ofItemAtPath:[GlobalProvider documentsFolder] error:NULL];
关于ios - iPhone锁定时,应用程序创建文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33945484/