无法在iOS后台模式下将数据插入sqlite DB

时间:2014-03-28 05:34:28

标签: ios sqlite cllocationmanager

我使用geofencing,当用户进入该区域时,我从本地数据库检查区域ID,如果有效则显示它。然后再更新本地数据库。问题是应用程序何时在活动状态下工作正常。当在后台状态(密码锁定屏幕)中应用程序没有将数据插入数据库时​​。 我也试试这个 How run sqlite in background on the iPhone? NSOperationQueue但是没有用。

任何人都有想法

1 个答案:

答案 0 :(得分:2)

您需要在XCode项目的功能选项卡中禁用数据保护,因为它在设备锁定时拒绝访问您的数据。

如果项目中有其他要保护的敏感数据,则可以将降低的文件保护级别应用于SQLite数据库。

查看NSFileManager中的NSFileProtectionNone属性和setAttributes:ofItemAtPath:error:方法。