上限を超える可能性がある場合は、辞書をPLISTファイルまたはコアデータに保存することを検討する必要があります。
PLISTファイルを使用するとします。ドキュメントディレクトリに保存されているファイルに辞書を書き込むことができます。次に、以下のコードを使用して、PLISTファイルをドキュメントディレクトリからiCloudに移動すると、他のデバイスと同期されます。
アプリがiCloudにPLISTファイルの更新バージョンがあることを検出したら(iCloudでファイルの変更日を確認し、ローカルに保存されているファイルよりも新しいかどうかを確認できます)、iCloudからコピーしてドキュメントに配置しますディレクトリ。
//find the URL of your app's ubiquitous container
//setting URLForUbiquityContainerIdentifier to nil returns the URL for the first ubiquitous container in the list in your app's entitlements, you can replace nil with a string
self.ubiquitousURL = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil];
//you may want to update self.ubiquitousURL to the documents folder in the ubiquitous container
//self.ubiquitousURL = [self.ubiquitousURL URLByAppendingPathComponent:@"Documents"];
//place the PLIST in iCloud
[[NSFileManager defaultManager] setUbiquitous:YES itemAtURL:plistURL destinationURL:[self.ubiquitousURL URLByAppendingPathComponent:@"file.plist"] error:NULL];
//you have detected there is a new file in iCloud and want to copy it to the documents directory
[[NSFileManager defaultManager] startDownloadingUbiquitousItemAtURL:[self.ubiquitousURL URLByAppendingPathComponent:@"file.plist"] error:NULL];
[[NSFileManager defaultManager] copyItemAtURL:[self.ubiquitousURL URLByAppendingPathComponent:@"file.plist"] toURL:plistURL error:NULL];
self.ubiquitousURL
iCloudディレクトリのURLです。plistURL
ドキュメントディレクトリ内のPLISTファイルのURLです。