1

ドキュメント ベースのコア データ アプリを作成します。

コアデータからプロジェクトをロードする方法があります。アプリでプロジェクトを作成してロードしているので、完全に機能しているようです。これは、情報がコア データ ドキュメントに保存され、取得されていることを意味します。

問題は、アプリを開くたびに新しいドキュメントが作成されることです。これは紛らわしいです。前述のように、アプリが開いている限り、必要なだけデータを保存および取得できます。

以下のコードは、以前は開発中に数週間は機能していましたが、現在は何らかの形で壊れています。アプリを起動するたびに「CREATE DOCUMENT」がログに記録され、明らかにデータが保存されていない空白のドキュメントが表示されます。

- (void)openDatabase {
    if (![[NSFileManager defaultManager] fileExistsAtPath:[myManagedDocument.fileURL path]]) {
        [myManagedDocument saveToURL:myManagedDocument.fileURL forSaveOperation:UIDocumentSaveForCreating completionHandler:^(BOOL sucess) {
            [self loadCurrentProjectFromCoreData];
             NSLog(@"CREATE DOCUMENT");
        }];
    } else if (myManagedDocument.documentState == UIDocumentStateClosed) {
            NSLog(@"DOCUMENT EXISTS, LOAD DOCUMENT");
        [myManagedDocument openWithCompletionHandler:^(BOOL sucess) {
            [self loadCurrentProjectFromCoreData];
        }];
    } else if (myManagedDocument.documentState == UIDocumentStateNormal) {
    [self loadCurrentProjectFromCoreData];
        NSLog(@"DOCUMENT LOADED");
    }
}
4

0 に答える 0