ArrayPrefs2 and "large amounts of data"

Hi,

I’m looking to save and load locally data in my puzzle game for IOS…

I have got three game modes the first mode has 35 levels and I need to save/load:

  • 3 arrays of 35 floats.
  • an array of 35 int.
  • an array of 35 bools.
  • two bools
  • a 2d array of 35 - 10 floats (top ten local scores per level) (or 35 arrays of 10 floats…)
  • a 2d array of 35 - 10 string (names for the top ten local scores per level) 10 char max.
  • a 2d array of 3 - 10 floats (top ten game mode 2 type 1, 2, 3)
  • a 2d array of 3 - 10 strings (names for the top ten game mode 2 type 1, 2, 3) 10 char max.
  • an array of 10 floats (top ten game mode 3)
  • an array of 10 strings (top ten game mode 3)

Is that considered has “a large amount of data” ?
Should I change to another technique than the ArrayPrefs2 ?
Saving into an Xml file I suppose, but in case of an update of the App does the Xml would be overwriten?

It’s my first app so I’m not really sure of all of this works with IOS, I used Xml file before for Windows app.

EDIT: I never used arrays in an Xml file, I’m going to start looking for info about that, I someone have something good to point me about that.

Thanks for the advices

Jup, you should problably serialize a list of a levelprogress class, and save and load that on loading the level. At least i think that is the neatest solution. That would not be overwritten, because you can save these in Application.persistentDataPath, which is outside of the installation directory.
If you would want to save that class later, it would be possible to create a converter to the new save system though.