2

iOS の学習を始めたばかりで、非常に基本的な質問があります。オブジェクトのコレクション全体をアーカイブ/アーカイブ解除する正しい方法は何ですか?

まずクラスに NSCoder プロトコルを実装する必要があることを理解しています。正しくアーカイブおよびアンアーカイブできるクラスがあると仮定して、次のような例を試してみました。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *docsDir = [paths objectAtIndex:0];
NSString *archivePath = [docsDir stringByAppendingPathComponent:@"thing.model"];
Thing *thing = [[Thing alloc] init];
[NSKeyedArchiver archiveRootObject:thing toFile:archivePath];

さて、これは 1 つThingをファイルとして保存するだけthing.modelですよね?

では、私のアプリに多くの「もの」があり、それらすべてをアーカイブしたい場合、どのようにアプローチしますか?

より具体的には (一部のコンテキストが役立つ場合)、私は Web サービスに支えられたアプリを開発しています。アプリでレコードを作成/編集し、それらをディスクに保存し、オブジェクトを定期的に同期できるようにしたいと考えています。 Web サービスでローカルに保存しました。

ありがとう!

4

2 に答える 2