0

現在のアプリでは、NSKeyedArchiverアプローチを使用して、起動間でオブジェクトをiPhoneに永続化しています。このファイルをバージョン番号で作成するときにタグ付けして、将来アプリが回転するときに、移行が必要な場合に処理するデータの種類がわかるようにするのが理にかなっているのではないかと思います。これは、NSKeyedArchiverでシリアル化されたカスタムオブジェクトのNSArrayのような単純なものに推奨されますか?もしそうなら、どのように/どこにバージョン番号を隠しますか?

ありがとう!

4

1 に答える 1

0

フォーマットが変更されると思われる場合は、はい、使用しているファイルのバージョンを検出する方法が必要になります。これを行う簡単な方法(NSArrayを使用しているため)は、バージョン番号をNSNumberとして配列の最初または最後に追加することです。または、実際にはファイルを変更しない、より複雑なアプローチの場合は、情報を別のファイルに保存できます(たとえば、ファイル名とバージョン番号をリンクするNSDictionaryを使用します)。または、ユーザーデフォルトシステムを使用して保存し、古いバージョンの場合は、ファイルとユーザーデフォルトキーを更新することもできます。

複数のキー付きデータファイルを扱っている場合を除いて、2番目の方法は使用しません。これらの3つのうち、おそらく最後のものを選択しますが、もっと理にかなっている他の方法があるかもしれません。

于 2009-08-18T23:38:20.420 に答える