2012-06-09 26 views
1

我在應用程序上使用TouchDB與雲中的CouchDB服務器同步數據。分配預裝的iOS TouchDB數據庫

一切正常,但我現在需要現在使用應用程序包部署應用程序的預加載版本,因此用戶不必下載靜態數據的MB。

這樣做的最好方法是什麼?我正考慮在我的項目中包含TouchDB目錄以及數據庫和附件,並且在初始化TouchDB數據庫之前,我檢查它是否存在於「應用程序支持」數據庫下,如果沒有,我將其複製到我的代碼中。

這是正確的方法嗎?

回答

1

您可以在您的應用程序包中的數據庫和附件目錄,然後使用

-(BOOL) replaceWithDatabaseFile: (NSString*)databasePath 
       withAttachments: (NSString*)attachmentsPath 
          error: (NSError**)outError; 

https://github.com/couchbaselabs/TouchDB-iOS/blob/master/Source/TD_Database.h#L87

看起來這確實做你正在計劃正是前幾天健全檢查:

https://github.com/couchbaselabs/TouchDB-iOS/blob/master/Source/TD_Database.m#L91

但是,這意味着您不必保留您的複製代碼我n與數據庫保存其文件的位置同步。