2014-03-28 45 views
1

我使用geofencing,當用戶進入到我檢查從本地數據庫域ID的區域,如果有效,則顯示it.Then更新本地數據庫問題是當應用程序處於活動狀態時工作正常。當處於後臺狀態(密碼鎖屏)的應用程序未將數據插入數據庫時​​。 我也試試這個 How run sqlite in background on the iPhone? NSOperationQueue但沒有工作。無法插入數據的SQLite數據庫在iOS的後臺模式

任何一個有想法

+0

您是否收到任何錯誤訊息?你有沒有爲你的應用程序啓用文件保護?如果是這樣,那麼當設備被鎖定時,您的數據庫可能不可用。 – Paulw11

+0

如何啓用fileprotection – mychar

+0

沒有錯誤的按摩只是空我找不到如何啓用文件保護 – mychar

回答

2

你需要從Xcode項目的功能標籤禁用數據保護,因爲它在設備鎖定時拒絕訪問您的數據。

如果你在你的項目,你要保護其他敏感數據,那麼你可以申請降低的文件保護級別,以你的SQLite數據庫。

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

+0

它已經被禁用,但仍m到處錯誤 未知錯誤調用sqlite3_step(14:無法打開數據庫文件) ,當我解鎖裝置會自動啓動將數據保存到數據庫 –