2016-02-19 44 views
0

目前我的應用程序正試圖下載幾個json文件,在每個文件下載完成後寫入領域對象,這個過程大約需要一分鐘。RealmSwift +應用程序已輸入背景

壞消息是當用戶在此過程中點擊主頁按鈕時,應用程序在返回到前景時掛起。

問題:即使應用程序在後臺,我如何保持寫入事務仍在繼續?

+0

你能在發展中重現這個錯誤?你有沒有收到崩潰報告,或者你看到日誌中有任何錯誤? – marius

+0

主要和輔助Realm文件的NSFileProtection屬性是什麼?由於Realm數據庫是磁盤上的文件,因此它們受到與文件系統上其他任何項目相同的系統級加密訪問要求。如果設置了NSFileProtectionComplete(這是iOS 8+中的默認設置),那麼當設備被鎖定時,這些文件將不可訪問。詳情請參閱Apple的指南:https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSFileManager_Class/index.html#//apple_ref/doc/constant_group/File_Protection_Values – jpsim

+0

@jpsim thanks for答覆,但我對swift編程很新,所以對於NSFileProtection方面沒有明確的說明/在哪裏檢查/做什麼。 我如何將它們設置爲NSFileProtectionNone,以便它不會妨礙Realm寫入事務? – Delonn

回答

1

什麼是主和輔助Realm文件的NSFileProtection屬性?由於Realm數據庫是磁盤上的文件,因此它們受到與文件系統上其他任何項目相同的系統級加密訪問要求。如果設置了NSFileProtectionComplete(這是iOS 8+中的默認設置),那麼當設備被鎖定時,這些文件將不可訪問。見蘋果的指南詳細信息:https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSFileManager_Class/index.html#//apple_ref/doc/constant_group/File_Protection_Values

您也可能會發現王國的文檔的這項工作正在進行中的部分有用:https://gist.github.com/jpsim/b976f546c5b4bf6231c3