Unityで使うPlayerPrefsの容量上限について
Unityでデータをセーブするときに、PlayerPrefsって使うじゃないですか?ときにこれの容量って、どこまであるんでしょうか?
ていうのもあれなんですよ。こないだ開発中のアプリを触ってるときに、妙に処理が重くなったんです。
んで色々と調べてみたら、PlayerPrefsの容量に問題があったみたいでした。
試験的に値を100個ほど保存してたんですが、それが重くしてたみたいなんですよね。
PlayerPrefs.DeleteAllを使って、データを全部削除すると軽くなったので、恐らくこれが原因だったはずです。
それで思ったんですよ。PlayerPrefsの容量上限でどこまでなんだろうと。
調べてみたら、こちらの記事がHITしました。
【Unity5】PlayerPrefsの容量上限について - 橋田レポート
記事内からの引用はこちら。
iOS 無限
Android 無限
Web Player 1MB1MBを文字数にすると
全角 : 524,288 文字
半角 : 262,144 文字
上記はKeyとValueを合わせた文字数になります。
例 :
PlayerPrefs.SetString( "神代Kojiro" , "橋田Hashida" );
これは 17文字 になります。
こちらを参照する限り、スマホは無限みたいです。つまり、デバイスのストレージが許す限りセーブできるってことでしょうか?
試しにやってみたんですよ。スマホ(iPhone7)にアプリを転送しつつ、PlayerPrefsに値を1000個ほど設けてみました。
結果は問題なし。処理もサクサク動いてたんで、全然OKでした。
僕の開発環境だと、100個くらいセーブすると処理が重くなる、ただスマホに転送した場合は問題なし、って感じですね。
結果的にハッキリとした上限は分かってないんですが、あまり気にしなくて大丈夫そうですね。それだけは分かりました。
P.S.
ところで引用元にあるWeb Playerってなんでしょうか?パソコンのこと?これはイマイチ分かっておりませんw