私のアプリでいくつかのデフォルトデータを出荷したいと思います。このデータは、プロパティリストに完全に格納することができます。 strucureは単純です:プロパティリスト:簡単な交換可能なデフォルトデータをユーザーに提供する方法
Root
0
animalType = cat
animalName = Tom
1
animalType = dog
animalName = Rambo
私は考えた:私はプロパティリストではなく、どこかでそれをハードコーディングを使用する場合は、その後、私は簡単にアプリが既に配布された後から選択する多くのデフォルトを提供することができます。もし私がそれをハードコードすれば、毎回重いアップグレードを提供しなければならなくなり、アップルは合格するまでに数週間かかるだろう。
しかし、私が得ないものが1つあります。 Xcodeでそのプロパティリストを手動で作成し、リソースグループに配置します。私が知る限り、Xcodeはいくつかのバイナリ形式にコンパイルします。私のアプリでは、NSPropertyListSerializationを使ってNSDictionaryを作成します。しかし、このプロパティリストはサンドボックスのドキュメントディレクトリに配置されません。だから、アプリケーションがそのプロパティリストの更新をいつかダウンロードするならば、更新はドキュメントディレクトリに行かなければならないだろうが、アプリケーションはまだルートの古いplistを見るだろうか?どこに置く? sqliteデータベースと同じように、ドキュメントにコピーする必要がありますか?
もう1つ:plistを編集して、サーバーからダウンロード/更新用のXMLとしてすべてを提供すると、当然のことながら、いくつかのバイナリ形式にコンパイルされることはありません。それはどのように機能しますか? NSPropertyListSerializationはそれを読むのに問題がありますか? XCodeを使用して毎回そのことをコンパイルして、アプリにバイナリをダウンロードさせる必要がありますか?