Core Dataは永続ストアファイルを作成しますか?

core-data iphone
Core Dataは永続ストアファイルを作成しますか?

教えてください:iPhoneアプリでCore Dataを使用する場合、基本的に2つのファイルがあります。 mydatamodel.xcdatamodelファイル、そして.sqliteファイルが必要です。 Appleは次のコードスニペットを提供します。

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
    if (persistentStoreCoordinator != nil) {
        return persistentStoreCoordinator;
    }

    NSString *appDirPath = [self applicationDocumentsDirectory];
    NSString *storeFileName = @"mystore.sqlite";
    NSURL *storeUrl = [NSURL fileURLWithPath:[appDirPath stringByAppendingPathComponent:storeFileName]];

    NSError *error = nil;
    persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];

    if (![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:nil error:&error]) {
        NSLog(@"Error: %@, %@", error, [error userInfo]);
        abort();
    }

    return persistentStoreCoordinator;
}

まだ利用できない場合、これはファイルを作成しますか?

[persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:nil error:&error]

ユーザーがアプリを起動するとダウンロードされるので、私のアプリは初期データを必要としません。

  4  4


ベストアンサー

はい。CoreDataは、アプリデリゲートでアプリケーションを最初に起動した直後にSQLite dbを作成します。

7


Yes. Appleのテンプレートによって提供されるボイラープレートCore Dataスタックコードは、データベースファイルがまだ存在しない場合に作成します。

2


はい、そのメソッドは、指定されたタイプの新しい永続ストアを特定の場所に追加し、新しいストアを返します。 http://developer.apple.com/iphone/library/DOCUMENTATION/Cocoa/Reference/CoreDataFramework/Classes/NSPersistentStoreCoordinator_Class/NSPersistentStoreCoordinator.html#//apple_ref/occ/instm/NSPersistentStoreCoordinator/addPersistentStoreWithType:configuration:URL:options:error: [ここにドキュメントがあります]。

1


タイトルとURLをコピーしました