投稿日:2012-05-25 Fri
Pです。iPhone端末用にローカルキャッシュをしようとした時の保存先についてです。
どうやら前の記事に書いたApplication.persistentDataPathは
審査のリジェクト対象になるみたいな記事を見かけたので変更することにしました。
そこでApplication.dataPathを指定してファイルを書き出そうとすると何故かエラー。。。
ネットを探しまくって辿り着いた答えはなんとUnityの公式サイトに書かれていました。
http://unity3d.com/support/documentation/Manual/iphone-Downloadable-Content
public static string GetiPhoneDocumentsPath () {
// Your game has read+write access to /var/mobile/Applications/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/Documents
// Application.dataPath returns
// /var/mobile/Applications/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/myappname.app/Data
// Strip "/Data" from path
string path = Application.dataPath.Substring (0, Application.dataPath.Length - 5);
// Strip application name
path = path.Substring(0, path.LastIndexOf('/'));
return path + "/Documents";
}
Application.dataPathから"/Data"を削除して"/Documents"に置き換えてるじゃありませんか!
iPhoneの仕様なのかどうかは分かりませんけど、最初見た時は目を疑いました。
何はともあれ解決したのでメモメモ。
△ PAGE UP