0

アプリのローカル データがある場合、ゲームのすべてのスコアを保存するローカル ハイスコアを想定します。アプリのアップデートをリリースすると、すべてのデータが失われます。この方法でデータを保存します:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filename = [documentsDirectory stringByAppendingPathComponent:@"defaultStage.dat"];

char cstr[512]={0};
[filename getCString:cstr maxLength:512 encoding:NSASCIIStringEncoding];

defaultStage=1;
FILE *pFile=fopen(cstr, "wb");
// and save with fprintf    

アプリを再インストールまたは更新したときに失われないように、データを「永久に」保存する方法はありますか?

4

2 に答える 2

0

Documents ディレクトリに保存しても、更新時にデータが失われることはありません。奇妙なことです。本当にそうですか?アプリの削除と再インストールに関しては、電話でデータをローカルに保存する方法はありません (つまり、アプリが削除されると削除されるアプリのサンドボックスの外)。iCloud またはリモート Web サーバーを使用する必要があります。

ハイスコ​​アを保存するには、アプリを更新しても削除されない NSUserDefaults を使用することをお勧めします。

編集:OS Xではなく、iOSについて話していると思います

于 2012-10-16T15:16:39.183 に答える
0

iOS/Mac OS X でデータを保存するには、多くのオプションがあります。まず、Core dataNSUserDefaults、およびNSFileManagerを確認してください。保存したいデータ量を確認し、どれがニーズに合っているかを確認してください。

于 2012-10-16T14:51:34.393 に答える